THESE
PAGES ARE FREE OF
JAVA
JAVASCRIPT
FRAMES
STORED ON A LINUX SERVER, AND RUNNING SPACEHAWKS' OWN LINUX BASED VOTING
AND MESSAGE BOARD CGI.
NO MICROSOFT RELATED PROGRAMS WERE USED TO CREATE THIS SITE.
|
|
|
|
|
SPACEHAWKS
WORLDNEWS
ISSUE 17 |
|
|
|
Moovid
PPC
|
Mint arról
a Betatesterek mesélhetnének, meglehetôs ideje folyik a már mindenki által
oly jól ismert, és azt hiszem méltán állíthatom - a jelenlegi legjobb Amigás
AVI/MOV lejátszó PPC verziójának fejlesztése.
Ketten állnak
a project mögött, név szerint pH03N1x, a Moovid 68K szerzôje, illetve Rachy,
akit talán mint a Font lemezújság fôszerkesztôjét ismerhetünk. A fejlesztést
természetesen - mondhatni meglehetôsen - megnehezítette az a tény, hogy pH03N1x
nem rendelkezik PPC kártyával. Ígyhát a dolog legfôképpen számos felhasználó
kérésére, de mégis leginkább Rachy hathatós közreműködésével lépett túl a
kezdés nehézségein.
Azután Petike
következett - akit talán mint a Petike művek (más nevén PC Pince) mögött álló
emberkének, de még inkább mint az Amiga Világ fôszerkesztôjének (MTFU :) ismerhetünk.
Petike ugyanis megelégelve pH03N1x siránkozását (pH03N1x meglehetôsen érdekes
személyiség, fôleg azt illetôen, mire mennyi pénzt hajlandó kiadni), hogy
nem kap senkitôl ingyen PPC kártyát, és biztosított számára a fejlesztés idejére
egy 603e/240 040/25 kártyát. Végre nem volt tehát immár akadály a Moovid PPC
és elkészülte között.
Így is történt.
Megjelentek a Béta verziók, és végül eljutottunk oda, ahol ma vagyunk. Voltaképpen
van egy rendkívül stabil, még egyelôre korlátozott, és hibrid, de legalább
hiba nélkül működô MoovidPPC-nk.
A program
nagyban épít a 68K változatra, olyannyira, hogy még mindig ez alkotja fô gerincét,
és tökéletesen működôképes a PPC rutinok nélkül is. (Mi sem bizonyítja ezt
jobban, mint az újonnan megjelent "noppc" kapcsoló is a Moovid paramétereinek
sorában). A PowerPC rész VBCC illetve PPC assembly rutinokból áll, követve
a 68K moovidból már megismert minôségű optimalizálás hagyományait.
A Moovid
a PPC rutinokkal - a támogatott codecek esetében jelentôsen - mindenképpen
gyorsabb lesz, mint az adott gépben megtalálható 68K processzorral egyedül
lehetne. Ennek ellenére azonban a PPC rutinok egyelôre nem segédkeznek másban,
mint a c2p-ben, valamint 1-2 codec átvételében. Korai lenne tehát native PPC
verzióról beszélnünk.
A gyakorlati
megvalósításra térve, a Moovid egy libraryt kapott, amely WarpOS alatt 1,
PowerUP alatt 2 file-ból áll, és amelyeket a LIBS: assign alá kell másolnunk.
(Természetesen azt, amelyiket használni szeretnénk.) Mint ahogy ebbôl mindenki
kitalálhatja pH03N1x és Rachy beváltotta ígéretét, és valóban elkészítették
mind a WarpOS, mind a PowerUP változatot is!
Ennek ellenére
jelen változatában nem tehetünk mást, mint hogy a WarpOS verzió használatát
javasoljuk, ugyanis jelen felállásban drasztikus a különbség a két verzió
által elért teljesítményben.
Ennek magyarázatát
az új Moovid működési elvében kell keresnünk. Programként voltaképpen még
mindig a 68K Moovid fut, amely framenként meghívja a megfelelô PPC kernelen
futó moovid.library-t, hogy azzal egy-egy funkciót elvégeztessen. Hogy miért
nem fut még a teljes Moovid a PPC processzoron annak a program - amely erôsen
optimalizált 68K assembly - és a codecek tömegének átírását jelentô feladat
nagysága az oka. Visszatérve, a Moovid lejátszás közben nem más, mint egy
68K program, amely sűrűn hívogat PowerPC programrészeket.
WarpOS alatt
szinkron módon indíthatja a PPC rutint, majd amikor az elvégezte feladatát
a 68K folytathatja tevékenységét. PowerUP alatt ugyanez Amigán már megszokott
message-k segítségével, közvetetten történik, tehát a párhuzamosan futó két
program közvetlenül nem érintkezik egymással, a köztük zajló kommunikációt
a PowerUP bonyolítja le. (Remélem nem mondok égbekiáltó hülyeséget, kénytelen
voltam a pH03N1x által a resultokra adott magyarázatra, annak interpretálásában
pedig hiányos emlékezetemre hagyatkozni - Emeric SH)
Mivel ezek
a message váltások egy lejátszás alatt azonban rengetegszer kell megtörténjenek
- lévén ez minden egyes frame esetén megtörténik - egy-egy hosszabb animáció
végére a WarpOS esetén megspórolt nem létezô messagekezelés által elért apró
különbség már igen komolynak lesz mondható.
Áttérve az
utolsó két fontos momentumra: elôször is mint elmondtuk a moovid a PPC rutinokkal
felturbózva esetenként jóval gyorsabb a native 68K változatnál, tehát akik
a PPC verzió regisztrálását fontolgatják azoknak azt mondhatom, az mindenképpen
megéri.
A két kernel
közül pedig mindaddig a WarpOS lesz egyértelműen a gyorsabb, amíg a Moovid
hibrid 68K/PPC program lesz. Ha egyszer eljön majd a napja, és native PPC
verzió készül belôle akkor valószínűleg nem lesz már különösebb különbség
közöttük, és nem kell talán majd valamelyiküket külön kiemelnünk. Addigis
a PowerUP verzió megléte így is komoly könnyebbség lesz a default rendszerként
PowerUP-ot használóknak, hiszen a 68K processzornál azért így is gyorsabb
a Moovid, és így nem kényszerülnek zavaró resetre minden használata után.
A készítôknek
pedig köszönetet kell mondanunk a mindenképpen lovagias cselekedetért, amit
MINDKÉT kernel támogatása jelent részükrôl, és legfôképpen azért, amit oly
sokan elmulasztanak: figyelemmel lenni mindenkire, arra, hogy ne legyen olyan,
aki egy alkotással csak rosszul járna. Szerintem követendô példa lenne - ha
már két kernelünk van - minden fejlesztô számára, hogy mindkét kernel használói
számra elérhetôvé tegyék programjaikat, akár anélkül, hogy bármelyik mellett
is végleg elköteleznék magukat, akár csak másodlagosként, de biztosítva a
másik a rivális kernelen futást. Mindenesetre köszönet nekik. Másrészt pedig
köszönet pH03N1x nevében is az ingyenesen biztosított developer kártyáért
a PC Pincének, és Petikének, amely nélkül a Friderikusz Show nem jöhetett
volna létre... Vagy hogy is van ez. :)
Azért pedig,
hogy szemléltessem is valamiképpen mindazt amirôl eddig beszéltem, hogy a
hibrid felépítés, és fôként a 68K oldalról történô PPC hívások miatt a PowerUP
jelentôsen lassabb a WarpUP verziónál, és ugyanúgy szemléltethessem azt is,
hogy még így is mennyivel gyorsabb a 68K önerejébôl elérhetô teljesítménynél
következzék egy szubjektív teszt. (pH03N1x default tesztjét azért nem szeretem,
mert nem életszerű, hiszen senki nem használja a moovidot hang nélkül az "fps
1000 noskip" paraméterrel. :)
A teszt alanya
a LaBlueGirl4Part1.mov, 55733421 byte méretű, közel 9 perces, és 7848 frame-bôl
áll. A mérete nagyobb, semhogy loresben lehetne játszani, (ezért 68K-n különösen
lassú) de végtére is 14.99 fps esetén következzenek a döbbenetes skipped frame
értékek. (AGA, 603e/200, 040/25, paraméterek: "dblpal nogui verbose")
WarpOS
- frames skipped: 7(!)
PowerUP - frames skipped: 2951
68Konly - frames skipped: 4427
Emeric SH
|