newsAdvanced Gtk+ Sequencer - News: Advanced Gtk+ Sequencer v2.2.x - ambiguity of the C language regarding concurrency

 
 
Latest News
GSequencer v3.0.4 - new major release arrived posted by jkraehemann, Sun 19 Jan 2020 12:19:27 AM UTC - 0 replies
GSequencer v3.0.0 alpha release posted by jkraehemann, Mon 30 Dec 2019 09:45:27 PM UTC - 0 replies
GSequencer v3.0.0 has got support for libsoup2.4 XMLRPC posted by jkraehemann, Thu 12 Dec 2019 06:28:37 PM UTC - 0 replies
GSequencer v3.0.0 planned release date 2020-05-07 posted by jkraehemann, Wed 20 Nov 2019 08:15:08 AM UTC - 0 replies
Advanced Gtk+ Sequencer v2.4.0 released posted by jkraehemann, Sat 02 Nov 2019 05:15:23 PM UTC - 0 replies
[Submit News]
[92 news in archive]

Advanced Gtk+ Sequencer v2.2.x - ambiguity of the C language regarding concurrency

Item posted by Joël Krähemann <jkraehemann> on Tue 28 May 2019 02:33:42 AM UTC.

After some development break, I will be back with full power. It was a time make some thoughts and talk on IRC. The ANSI C language doesn't cover all aspects of computing. Especially, as regarding the hardware details. This situation is going to shape the next release 2.2.x.

I learned about the cache-coherency protocol. Finally, came to the conclusion under certain circumstances we can omit the read-read and read-write locks. Yes exactly, read-write locks can be disabled if the document I read is right. This is related to the design of GSequencer.

However, only the deterministic engine mode is aware of race-conditions.

Note, the C language doesn't tell how HW behaves during concurrent access.

Grained mutex control during compilation

There won't any mutex removed but rather controlled by conditional compilation. Thus I want to add 2 new macros:

#define AGS_NO_READ_READ_LOCK
#define AGS_NO_READ_WRITE_LOCK

These macros should be used by AgsRecall and AgsAudioSignal.

Better plugin experience

There are going to be additional command line option, to control if plugins shall be loaded during launch of the application.

  • --load-ladspa
  • --load-dssi
  • --load-lv2
  • --load-vst3
  • --load-all

The UI shall be capable of adding plugins at runtime.

VST3 ANSI C wrapper

Few days ago, I started to write a C wrapper of VST3 SDK. I am unsure how far I get with the support, until release.


by Joël

No messages in Advanced Gtk+ Sequencer v2.2.x - ambiguity of the C language regarding concurrency

 

Back to the top


Powered by Savane 3.5