Adobe CS5 suorituskyky: 64-bittinen, säikeistetty ja CUDA-kiihdytetty

Artikkelin kirjoittaja: Teemu Laitila | 0 kommenttia

After Effects CS4


Ensimmäinen tehtävämme tässä artikkelissa oli jatkaa siitä mihin Chris Angelini jäi heinäkuussa kirjoittamassa Intel Xeon 5600 –prosessoria käsittelevässä artikkelissaan. Chris aloitti testit 12 säikeellä käyttäen Gulftown-prosessoria ja siirtyi ylöspäin aina 24 säikeeseen kahdella Xeon X5680s –prosessorilla. Yllättäen testeissä paljastui, että suorituskyky itse asiassa väheni prosessointikyky lisääntyi.

”After Effects CS4 pystyy käyttämään ainoastaan 4GB muistia mikä on vain kolmasosa siitä mitä nämä Xeon-laitteet tarjoavat”, kirjoitti Angelini, ”Kun prosessorintitehoa lisätään AE:n käyttöön, muistia on entistä vähemmän käytössä per prosessori, olkoon se fyysinen tai looginen. Tuloksena on paljon swapppaamista SSD-levylle joka on kyllä nopeaa, mutta ei missään tapauksessa pärjää kolmelle kanavalle DDR3-muistia”.

Sen sijaan että ottaisimme käyttöön työasemaluokan prosessoritehoja, säädimme kuluttajaluokan Intel Core i7-980X -prosessorin vain kahteen säikeeseen, eli käytössä oli kaksi 980X-ydintä ilman Hyper-Threadingia. Tämän low-end-säädön pitäisi kuvastaa paremmin muutamia hitaampia AMD:n Athlon II –prosessoreita.

Omissa testeissään Chris piti After Effectsin moniprosessointi-säädön päällä, sillä sen avulla CS5 sai aikaan parhaita tuloksia. Moniprosessoinnin avulla AE pystyy laskemaan useampia ruutuja samanaikaisesti eri ytimiä käyttäen. Ilman sitä kaikki ytimet työstävät samaa ruutua kunnes se valmistuu ja siirrytään toiseen. Päätimme ajaa testit molemmilla tavoilla nähdäksemme paremmin kuinka paljon ytimien/säikeiden lisäämisestä on hyötyä.





Kuten pian huomaat paremmin, After Effects 4 ei selvästikkään pidä Hyper-Threadingista. Kaikissa HT:n kanssa ajetuissa testeissä, joissa ei ollut Multiprocessing käytössä, AE:n CPU-kuormitus vaihteli 10 ja 20 prosentin välillä, mutta tasalukuiset, eli HT:n avulla luodut loogiset ytimet, eivät tehneet juuri mitään. Kahta aktiivista ydintä (ja neljää säiettä) käytettäessä tasalukuisilla säikeillä oli hieman enemmän töitä, mutta ei mitään verrattuna siihen mitä saavutetaan moniprosessointia käytettäessä.





Miten tämä prosessorin kuormitus sitten näkyy tosielämän suorituskykynä? Tulokset ovat selvät: After Effects 4 toimii paljon paremmin ilman Hyper-Threadingia, joskus jopa suhteessa 2:1. Jokapäiväisessä käytössä on ilman muuta järkevää jättää Hyper-Threading pois ja ottaa käyttöön Multiprocessing –asetus, ainakin siinä tilanteessa, että et halua tehdä tietokoneella jotain muuta samaan aikaan. Hyper-Threadingin käyttö on järkevää, jos on tarvetta tehdä tietokoneella muutakin, sillä se säästää 20 – 30 prosenttia prosessoritehoa, mikä jättää tarpeeksi resursseja muihin toimintoihin.

Chris teki mielenkiintoisen huomion, ”CS4:ssa saimme parhaat tulokset käyttämällä kaikkia ytimiä yhden ruudun työstämiseen”, eli jättämällä pois Multiprocessing saatiin parempi suorituskyky. Tässä tapauksessa niin ei käynyt. Kaikissa tapauksissa multiprosessoinnilla saatiin nopeampia tuloksia ja mitä enemmän säikeitä käytettiin, sitä suuremmaksi ero nousi.

Multiprosessoinnin käyttö on siis suotavaa. Sen lisäksi havaitsimme, että ilman Hyper-Threadingia mittasimme vain pieniä parannuksia säikeiden määrän lisääntyessä (itse asiassa neljän ja kuuden ytimen välillä ei ole käytännössä mitään eroa). Siiryttäessä kahdesta fyysisestä ytimestä kuuteen, suorituskyky parani vain 29 prosenttia. Mielenkiintoisin havainto oli kuitenkin se, että kaksi fyysistä ydintä pärjäsi itse asiassa 7,5 prosenttia paremmin kuin 12 loogista säiettä. Hyper-Threading ei vain toimi CS4:n kanssa.

Kommentoi artikkelia