( sz332 | 2013. 12. 19., cs – 09:21 )

Jó nagy ökörség lett volna a SAP-ot assemblyben írni. Először is iszonyatosan drága lett volna. Gondolj bele, hogy ha csak 1 millió dollár volt a kifejlesztése (aminek valószínűleg a sokszorosa lehet), akkor ebből csináltunk volna 100 millió dollár költséget. Ha 5 millió dollár, akkor 500 milliót? Hol hozta volna be ezt? Sehol. Gyorsabb lenne? Talán, nem biztos. Drágább lenne? Sokkal-sokkal. Lenne esélye egy 20x drágább SAP-nak a mostanival szembe? Semmi az égadta világon, ki az a hülye, aki elfogadható sebességű szoftver és egy gyors szoftver közül azt választja, aki 20x annyiba kerül? Senki.

Mennyi ideje fejlesztik a SAP-ot? 30 éve!!! A világ negyedik legnagyobb szoftverfejlesztő cége, csak magyarországon 350-en dolgoznak nekik...

Azt gondolom tudod, hogy a SAP az csak egy keretrendszer, és az egyes cégekre testre kell szabni. Milyen iszonyatos költségeket jelentene, amikor assembly programozók garmadáját kellene felvenni egy ilyen fejlesztéshez/testreszabáshoz.

És ha még meg is van a szipi szupi x86 assemblyben megírt kódod, aztán jön, hogy bocsi, de nekünk Solaris van, fut rajta? Ja, nem? Akkor nem vesszük meg. Vagy mostanában történik egy nagy váltás intelről arm architektúrára. Jó esetben csak újra kell fordítani a kódot (ha egy része java-ban van, akkor azt sem). A te megoldásoddal újra kellene kódolni az egészet.

A szupergyors java kód kommentet sem értem, meg a GPU-n futást sem, ez teljesen érthetetlen.

Aztán még egy dolog. Lehet hogy van néhány szuper ügyes assembly programozó. Nagyon szép. Csak amikor nem néz balra, aztán elcsapja a villamos, akkor ott áll a projektvezető/cégtulajdonos, hogy honnan a szarból fogunk egy hasonlóan zseniális és assemblyhez értő embert találni.

Szóval az, hogy valami gyors, az csak egyetlen picike paraméter egy szoftvernek.

A nagy projektekhez. Nekünk van egy régebbi, nem túl nagy projektünk. 3-5 ember dolgozott rajta, most egy gyors metrika (java nyelven írva):

közel 5000 fájl
közel 1.2 millió sor
SLOC-P: 760 ezer
SLOC-L: 500 ezer

Deployment Solarisra: F5, enter. Deployment Linuxra: F5, enter. Deployment Windowsra: F5, enter. Ha arm platform lesz, valószínűleg ott is így fog történni.

Csak összehasonlításként egy linux kernel: 15 millió sor, 37000 fájl.

Nézzünk egy költségszámítást:

http://www.linuxfoundation.org/sites/main/files/publications/estimating…

1.3 milliárd dollárba kerülne a linux kernel 15 millió sora (6.7 millió SLOC) ha piaci alapon fejlesztetnénk. A SAP simán lehet akkora, mint a linux kernel.

Ez nagyjából meg is mutatja, miért nem fog soha senki assemblyben nagy - vagy akár csak közepes méretű kódot írni, piaci alapon.