Hirdetés

Új hozzászólás Aktív témák

  • P.H.

    senior tag

    válasz Rive #544 üzenetére

    Én programozói szempontból tudok csak kiindulni, csak azokat tudom, hogy mik segítenék a munkámat.
    Ennél a kódnál [link] (SSE IDCT, 2x4 oszlopot konvertál egymás után, majd 8x1 sort SSE2 integer megvalósítással gyorsabb lenne, de mindenképpen a lehető legpontosabb eredmény kellett itt) ha lenne egy megfelelő, shared L1 Data Cache-en alapuló Hyper-Threading, akkor párhuzamosan mehetne a 4 oszlopok dekódolása, nem kellene egymás után írni őket, a függőségek miatt úgyis ''lassú'' a végrehajtás, és kevés egység dolgozik egyszerre, akármennyire is szét vannak dobálva a függő utasítások. Shared L1, mert a cache-vonalak átvitele két cache között nem túl gyors művelet.

    Ennél a kódnál [link] pedig annyira véletlenszerű a forrásadat, hogy biztos vagyok benne, hogy nagyon sok a misprediction, ezen segíthetne, ha mindig mindkét ág elindulna. (Ugyancsak a függőségek miatt mindig van szabad ALU).

    Mindkét kód saját készítés, kéretik bárkinek felhasználás előtt kikérni az engedélyem :)
    26 megapixeles képen a fenti két kód lefutása 2400 MHz-es K7-en (gettickcount-tal mérve):
    - IDCT: több, mint félmillió teljes lefutás kb. 200 millisec alatt
    - Huffman-decode: több, mint 17 millió teljes lefutás: 650 millisec alatt
    Nagyon kíváncsi leszek, mennyivel gyorsul majd K8-on.


    [Szerkesztve]

    Arguing on the Internet is like running in the Special Olympics. Even if you win, you are still ... ˙˙˙ Real Eyes Realize Real Lies ˙˙˙

Új hozzászólás Aktív témák