1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155
|
{\rtf1\mac\ansicpg10000\cocoartf102
{\fonttbl\f0\fnil\fcharset77 Monaco;}
{\colortbl;\red255\green255\blue255;\red0\green0\blue191;\red96\green96\blue96;\red191\green0\blue0;
\red0\green115\blue0;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\f0\fs18 \cf0 \
///sclang cpu load values\
\
s = \cf2 Server\cf0 .local;\
s.boot;
\fs24 \
\
\fs18 (\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 SynthDef\cf0 (\cf3 "help-sinegrain"\cf0 , \
\{ \cf2 arg\cf0 out=0, freq=440, i_dur=0.005;\
\cf2 var\cf0 env;\
env = \cf2 EnvGen\cf0 .kr(\cf2 Env\cf0 .perc(i_dur*0.1, i_dur*0.9, 0.2), doneAction:2);\
\cf2 Out\cf0 .ar(out, \cf2 Pan2\cf0 .ar(\cf2 SinOsc\cf0 .ar(freq, 0, env), \cf2 Rand\cf0 (-1,1)))\
\}).load(s);\
)\
\
\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: ca. 39% \
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 (\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 Routine\cf0 (\{\
loop(\{\
\cf2 Synth\cf0 (\cf3 "help-sinegrain"\cf0 , [\cf5 \\freq\cf0 , rrand(9000.0, 8000.0)], s);\
0.005.wait;\
\})\
\}).play;\
)\
\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: ca. 30%\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 (\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 Routine\cf0 (\{\
loop(\{\
s.sendBundle(s.latency,[\cf3 "/s_new"\cf0 , \cf3 "help-sinegrain"\cf0 , \cf2 UniqueID\cf0 .next, 1, 0, \cf5 \\freq\cf0 , rrand(9000.0, 18000.0)]);\
0.005.wait;\
\})\
\}).play;\
)\
\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: 40 % \
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 (\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 Routine\cf0 (\{\
loop(\{\
s.sendMsg(\cf3 "/s_new"\cf0 , \cf3 "help-sinegrain"\cf0 , \cf2 UniqueID\cf0 .next, 1, 0, \cf5 \\freq\cf0 , rrand(9000.0, 18000.0));\
0.005.wait;\
\})\
\}).play;\
)\
\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: 40% peak\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 (\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 Routine\cf0 (\{\
var synth;\
loop(\{\
synth = Synth.prNew(\cf3 "help-sinegrain"\cf0 ,s);\
s.listSendBundle(nil, [synth.newMsg(s, \\addToTail, [\cf5 \\freq\cf0 , rrand(9000.0, 18000.0)])]);\
0.005.wait;\
\})\
\}).play;\
)\
\
\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 ////////////////////////////\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 \
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //oscillator benchmarks: parallel synths\
//server cpu values\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 (\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 SynthDef\cf0 (\cf3 "help-sinebechmark"\cf0 , \
\{\
\cf2 Out\cf0 .ar(0, \cf2 SinOsc\cf0 .ar(\cf2 Rand\cf0 (200, 700), 0, 0.01))\
\}).send(s);\
)\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: avg cpu: 22.2 % (128 UGens, 32 synths)\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 32.do(\{ \cf2 Synth\cf0 .new(\cf3 "help-sinebechmark"\cf0 ); \});\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: avg cpu: 43.5 % (256 UGens, 64 synths)\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 64.do(\{ \cf2 Synth\cf0 .new(\cf3 "help-sinebechmark"\cf0 ); \});\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: avg cpu: 64 % (384 UGens, 96 synths)\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 96.do(\{ \cf2 Synth\cf0 .new(\cf3 "help-sinebechmark"\cf0 ); \});\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: avg cpu: 81 % (448 UGens, 112 synths) (GUI gets slow)\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 112.do(\{ \cf2 Synth\cf0 .new(\cf3 "help-sinebechmark"\cf0 ); \});\
\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 ///////////using Mix ugen\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf0 \
(\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 SynthDef\cf0 (\cf3 "help-sinebechmark2"\cf0 , \
\{\
\cf2 Out\cf0 .ar(0, \
\cf2 Mix\cf0 .fill(64, \{ \cf2 SinOsc\cf0 .ar(rrand(200.0, 700), 0, 0.01) \})\
)\
\}).load(s);\
)\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: avg cpu: 43 % (129 UGens, 1 synth)\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 Synth\cf0 .new(\cf3 "help-sinebechmark2"\cf0 );\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\fs24 \cf0 \
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\fs18 \cf0 \
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf4 //pb333: avg cpu: 80 % (258 UGens, 2 synth) (GUI gets slow)\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\cf2 Synth\cf0 .new(\cf3 "help-sinebechmark2"\cf0 );
\fs24 \
\
\
}
|