BelaPlatform / supercollider

an environment and programming language for real time audio synthesis and algorithmic composition
GNU General Public License v3.0
14 stars 8 forks source link

Cache compiled class library for faster startup #64

Closed giuliomoro closed 3 years ago

giuliomoro commented 6 years ago

this may be a starting point for caching the class library if needed: https://github.com/supercollider/supercollider/issues/1910

giuliomoro commented 6 years ago

timestamped log (obtained with:

A=`date +%s`; sclang /root/Bela/projects/exampleTempProject/_main.scd <> /tmp/sclangfifo | while IFS= read -r line; do let "CUR = `date +%s` - $A"; echo ${CUR}.`date +%N`s __ "$line"; done

):

1.168930464s __ SC FFT global init: cosTable initialised.
1.216791548s __ init_OSC
1.263271881s __ compiling class library...
1.440197714s __ initPassOne started
1.491606798s __     NumPrimitives = 582
1.536597423s __ initPassOne done
1.587255256s __     compiling dir: '/usr/local/share/SuperCollider/SCClassLibrary'
1.635447089s __     compiling dir: '/usr/local/share/SuperCollider/Extensions'
1.683674089s __     pass 1 done
3.637772424s __ ERROR: Class extension for nonexistent class 'View'
3.693750257s __      In file:'/Common/GUI/Base/ext-asLayoutElement.sc'
3.747253340s __     numentries = 1019030 / 11229960 = 0.091
3.802496174s __     4060 method selectors, 2766 classes
3.851326007s __     method table size 7044000 bytes, big table size 44919840
3.907091132s __     Number of Symbols 11088
3.959175132s __     Byte Code Size 299197
3.011289716s __     compiled 355 files in 2.46 seconds
4.058110257s __
4.107528382s __ Info: 4 methods are currently overwritten by extensions. To see which, execute:
4.166152341s __ MethodOverride.printAll
4.215572424s __
4.263332966s __ compile done
4.311501132s __ Class tree inited in 0.33 seconds
7.841646009s __
7.865675717s __
7.890277051s __ *** Welcome to SuperCollider 3.9dev. *** For help type ctrl-c ctrl-h (Emacs) or :SChelp (vim) or ctrl-U (sced/gedit).
9.309583510s __ booting server 'localhost' on address: 127.0.0.1:57110
9.449577135s __ SC FFT global init: cosTable initialised.
9.525373218s __ Found 0 LADSPA plugins
9.605247302s __ Faust: supercollider.cpp: sc_api_version = 2
9.678045468s __ Faust: FaustGreyholeRaw numControls=7
9.753179760s __ Faust: supercollider.cpp: sc_api_version = 2
9.841827260s __ Faust: FaustJPverbRaw numControls=11
9.989843010s __ SC_BelaDriver: >>DriverSetup - Running on PRU (1)
10.145704385s __ Configured with
10.277555469s __  (4) analog input and (4) analog output channels, (16) digital channels, and (0) multiplexer channels.
10.414653594s __  HeadphoneLevel (-6.000000 dB), pga_gain_left (20.000000 dB) and pga_gain_right (20.000000 dB)
10.556498510s __  DAC Level (0.000000 dB), ADC Level (0.000000 dB)
10.677314385s __ Speakers are not muted.
10.798197719s __ SC_AudioDriver: sample rate = 44100.000000, driver's block size = 16
10.917537219s __ SuperCollider 3 server ready.
13.206392303s __ Shared memory server interface initialized
13.299651678s __ Receiving notification messages from server 'localhost'
giuliomoro commented 3 years ago

this is not going to happen, I understand