diff options
-rw-r--r-- | NOTES.txt | 18 | ||||
-rw-r--r-- | README.txt | 10 |
2 files changed, 27 insertions, 1 deletions
diff --git a/NOTES.txt b/NOTES.txt new file mode 100644 index 0000000..11b9371 --- /dev/null +++ b/NOTES.txt @@ -0,0 +1,18 @@ +scratchpad for the development of iemnet +======================================== + +speed & syslocks +================ +one bottleneck right now is the synchronisation with Pd's +main thread to register a clock callback. +doing a sys_lock() whenever a package arrives will slow down things immensely. + +alternatives: + no sys_lock(): will eventually crash Pd (no option) + use sys_trylock(): this might eventually fail to notify Pd of newly arrived + packets (bad for throughput) + external polling: no syslock needed at all, but more complicated + keep track of clock_callback: "notified" flag tells us, whether we have already + sent a notification which has not yet been handled...no need to notify again + + #4 looks most promising @@ -43,7 +43,15 @@ the lib doesn't know anything about the actual transport protocol. it only interacts with a socket. easy to run: -think speed +think speed, think reliability +all known implementations for pd are either slow or will freeze Pd when under +_heavy_ load. most do both. +iemnet wants to provide objects whih allow you to saturate the network +connection and still keep Pd reactive. +(sidenote: saturating even a 100MBit network with Pd might lead to audio +dropouts; this is not necessarily related to the network but rather to the +amount of data processed by Pd...) + |