Scilab

Ezaugarri Orokorrak

Zenbakizko kalkuluko programa matematikoaren 5.1.1 bertsioa Itanium, Opteron eta Pendulo nodoetan eta 5.2.2 bertsioa Xeonetan. Interfaz grafikoa bakarrik Pendulon eta Guinnessen eskuragarri dago. Matlab-en antzekoa funtzionalitateei dagokienez. Ondokoentzako tresnak ditu:

  • 2D eta 3D bistaratzea.
  • Programazio hizkuntza (scripts de scilab).
  • Ekuazio diferentzialak ebaztea.
  • Sistema hibridoen modelizatzaile eta simulatzailea: seinale tratamendua, kontrol sistemak, sistema biologikoak…
  • Algebra simbolikoa (Maple).

Nola Exekutatu

scilab

eta interfaz grafikoa irekiko du Pendulon eta terminal bat maizen. Ilaretara jaurtitzeko script-etan

/software/bin/scilab -f script_scilab > output_file

erabili, hemen script_scilab Scilab-entzako aginduak dituen fitxetegia da.

Informazio Gehiago

Informazio eta dokumentazio gehiago Scilabi buruz Scilab home page.

Benchmarkak

Benchmark batzuk egin ditugu Scilab, Octave eta Matlab konparatuz zerbitzuko makinetan. Benchmark handi bat egin dugu eta beste bat berdina baina txikiagoa Pendulon egin ahal izateko. Lehenengo taulan puntuen laburpen bat daukagu eta bigarrenean eta hirugarrenean denbora emaitzak daude.

Tabla 3: Benchmark handien laburpena. Puntuazioa benchmarketan lorutako 3 scoreeen batezbesteko geometrikoa.
Octave Scilab Matlab
Itanium Opteron Xeon Opteron Xeon Opteron Xeon
Total score 47.6 31.4 14.5 31.6 15.6 22.0 9.5

Laburbilduz, Matlab eta Octaveko azken bertsioek Xeon nodoetan antzerako errendimendua dute (bukleen ejekuzioan ezik, irakurri beherago). Scilab %50 mantxoagoa da gutxi gora behera. Makinei begiratuta Xeon berriek Opteronak edo Itaniumak bikoizten dute errendimenduan. (NOTA: Scilab eta Octave konpilatu eta optimizatuta daude eta instalatzen diren binarioak baino bi aldiz azkarragoak dira)

3. taulan programa bakoitzak lortutako puntuazioa ikusten dugu. Xeonetan zentratuko gara. Horietan badirudi Matlab azkarrena dela baina denboretan fijatzen bagara 4 taulan ikusten dugu Octave antzerako denborak dituela Programation 4 benchmarkean ez ezik, non Octave oso gaizki doa. Benchmark honetan bukleak exekutatzeko denbora neurtzen da Toeplitz matriz bat zortuz. Matlaben teknologiak bukleak oso azkar exekutatzen ditu baina Octavek ez. Horregatik bukleen ordez operazio vektorialak edo funtzioak erabiltzea gomendatzen da (Adibidez, Octaven toeplizt(c,r) funtzioa erabiliz benchmark horretan ez du ia denborarik behar).

Benchmark txikian Pendulo ere neurtu dugu Opteron eta Itanium nodoen errendimendua lortuz gutxi gorabehera. Pendulon Octave eta Scilab ez dira konpilatu, binarioak instalatu dira

Matlabeko lizentzia kopurua limitatua da, baina Scilab edo Octave dohanik dira eta asko kalkulatu behar bada ez dauka lizentzien edo prozesuen muga.

Tabla 4: Benchmark handiaren emaitzak segundutan. Scorea batezbesteko geometrikoa da emaitza txarrena eta hoberena kenduta. Bukaeran benchmarkak deskribatzen dira. ++ oso denbora handiak dira eta ez dira kontutan hartzen bataz bestekoan.
Octave Scilab Matlab
Itanium Opteron Xeon Opteron Xeon Opteron Xeon
Matrix calculation
Matrix calc 1 108.6 35.9 12.8 93.0 33.2 24.5 12.4
Matrix calc 2 49.5 3.8 7.5 9.8 9.3 18.1 13.4
Matrix calc 3 122.3 32.8 25.1 27.8 25.6 24.8 18.4
Matrix calc 4 72.2 137.0 41.5 172.1 80.2 132.8 40.8
Matrix calc 5 37.2 42.5 17.9 40.0 18.0 54.8 18.7
Score 72.9 36.8 17.9 46.9 24.8 32.1 16.6
Matrix functions
Matrix func 1 2.6 1.2 0.5 11.0 0.9 1.7 0.6
Matrix func 2 153.5 99.5 37.2 290.9 71.8 124.0 39.9
Matrix func 3 48.1 50.8 22.1 48.1 21.6 65.8 23.0
Matrix func 4 57.1 72.8 29.1 66.1 29.8 106.5 32.8
Matrix func 5 32.1 42.9 16.1 39.7 16.3 51.0 16.5
Score 44.5 54.1 21.8 50.2 21.9 71.0 23.2
Programation
Programation 1 4.7 2.2 1.4 2.8 1.7 4.7 3.1
Programation 2 48.1 22.2 5.3 18.4 5.7 13.7 6.4
Programation 3 3.9 1.5 0.4 3.7 1.3 1.6 0.6
Programation 4 161.2 76.2 66.1 35.5 35.6 0.1 0.0
Programation 5 ++ ++ ++ ++ ++ ++ ++
Score 33.2 15.5 7.8 13.4 7.0 4.7 2.2
Tabla 5: Benchmark txikiaren emaitzak segundutan. Scorea batezbesteko geometrikoa da emaitza txarrena eta hoberena kenduta. Bukaeran benchmarkak deskribatzen dira.
Octave Scilab Matlab
Pendulo Itanium Opteron Xeon Pendulo Opteron Xeon Opteron Xeon
Matrix calculation
Matrix calc 1 2.2 3.1 2.4 1.0 4.3 5.6 2.8 2.1 1.1
Matrix calc 2 0.9 5.2 0.3 0.7 1.1 1.1 0.9 1.2 1.2
Matrix calc 3 1.5 1.8 1.4 1.3 1.9 1.8 1.3 1.0 0.9
Matrix calc 4 1.8 1.8 3.8 1.2 18.4 6.4 2.3 3.0 1.2
Matrix calc 5 1.0 2.5 1.4 0.6 3.5 1.7 0.6 1.6 0.6
Score 1.4 2.4 1.7 0.96 3.1 2.6 1.7 1.6 1.1
Matrix functions
Matrix func 1 0.4 0.63 0.4 0.2 0.9 2.6 0.5 0.8 0.3
Matrix func 2 3.0 3.3 4.3 1.9 7.5 9.4 2.3 4.3 2.0
Matrix func 3 1.1 1.0 1.6 0.7 4.3 1.6 0.6 1.6 0.7
Matrix func 4 1.3 1.3 2.0 0.9 5.2 2.7 0.9 2.3 0.9
Matrix func 5 0.9 0.7 1.2 0.5 3.2 1.6 0.5 1.2 0.5
Score 1.1 1.0 1.6 0.65 4.2 2.2 0.67 1.7 0.66
Programation
Programat. 1 0.5 0.6 0.6 0.4 0.6 0.8 0.5 1.1 0.9
Programat. 2 30.0 2.6 3.9 1.1 4.3 3.5 1.2 2.6 1.3
Programat. 3 0.6 0.3 0.4 0.1 1.0 1.2 0.4 0.3 0.2
Programat. 4 8.2 14.3 7.2 5.8 3.3 3.7 3.2 0.0 0.0
Programat. 5 24.0 27.8 36.0 14.8 67.8 57.4 33.2 38.9 17.5
Score 4.9 2.8 2.6 1.4 2.4 2.5 1.3 0.9 0.58

Benchmarken deskribapena.

Matrix calculation
Matrix calc Creation, transp., deformation of a matrix.
Matrix calc Normal distributed random matrix ˆ1000.
Matrix calc Sorting of random values.
Matrix calc Cross-product matrix (b = a’ * a).
Matrix calc Linear regression over a matrix (c = a b’).
Matrix functions
Matrix func FFT over random values.
Matrix func Eigenvalues of a random matrix.
Matrix func Determinant of a random matrix.
Matrix func Cholesky decomposition of a matrix.
Matrix func Inverse of a random matrix.
Programation
Programation Fibonacci numbers calculation (vector calc).
Programation Creation of a Hilbert matrix (matrix calc).
Programation Grand common divisors of pairs (recursion).
Programation Creation of a Toeplitz matrix (loops).
Programation Escoufier’s method on a matrix (mixed).