🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.asm
Article #2225

Re: Odwracanie kolejności bajtów w tablicy

#2225
From: Wojciech Muła
Date: Sat, 24 Apr 2010 20:14
30 lines
2096 bytes
Andrzej Grażyński <grazynsk@petex.com.pl> wrote:

> Skoro LODS/STOS tak się nie lubią z tym procesorem, to zróbmy oczywistą 
> modyfikację, nieznacznie różniącą się od Twojej wersji:
> 
> 
>    @@Loop:
>         MOV EAX,[ESI]
>         MOV EDX,[EDI]
>         BSWAP EAX
>         BSWAP EDX
>         MOV [EDI],EAX
>         MOV [ESI],EDX
>         ADD ESI,4
>         SUB EDI,4
>         LOOP @@Loop
> 
> I sprawdź teraz.

Lepiej, ale dalej słabo. Dopiero po zastąpieniu LOOP sekwencją dec ecx/jnz
jest okej. Te wszystkie CISC-owe instrukcje Intel od jakiegoś czasu właściwie
porzucił, nawet nie ma o nich wzmianki w podręczniku optymalizacji. Wyjątkiem
jest REP MOVS, który jest jakoś specjalnie traktowany w niektórych przypadkach.

Właśnie odkryłem, że wyniki pomiarów dla wersji PSHUFB są jakieś dziwne,
nie wiem dlaczego takie mały czasy mi wtedy wyszły. Teraz zmierzyłem 
i przyspieszenie wychodzi dużo mniejsze. Właściwie przyspieszenie rzędu 16
jest zbyt piękne, aby było prawdziwe. :)

w.
Technical Details
Message-ID: <20100424221403.1f22a53c.wojciech_mula@poczta.null.onet.pl.invalid>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mail
References: <20100422191115.9902fe58.wojciech_mula@poczta.null.onet.pl.invalid> <hqrujb$r3j$1@news.onet.pl> <20100423235642.f5548b69.wojciech_mula@poczta.null.onet.pl.invalid> <hquj26$akr$1@news.onet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mail
From: Wojciech Muła
 <wojciech_mula@poczta.null.onet.pl.invalid>
Newsgroups: pl.comp.lang.asm
Subject: Re: Odwracanie kolejności bajtów w tablicy
Date: Sat, 24 Apr 2010 22:14:03 +0200
Organization: http://onet.pl
Lines: 38
Message-ID: <20100424221403.1f22a53c.wojciech_mula@poczta.null.onet.pl.invalid>
References: <20100422191115.9902fe58.wojciech_mula@poczta.null.onet.pl.invalid> <hqrujb$r3j$1@news.onet.pl> <20100423235642.f5548b69.wojciech_mula@poczta.null.onet.pl.invalid> <hquj26$akr$1@news.onet.pl>
NNTP-Posting-Host: public-gprs53138.centertel.pl
Mime-Version: 1.0
X-Trace: news.onet.pl 1272140055 12707 91.94.80.52 (24 Apr 2010 20:14:15 GMT)
X-Complaints-To: niusy@onet.pl
NNTP-Posting-Date: Sat, 24 Apr 2010 20:14:15 +0000 (UTC)
X-Newsreader: Sylpheed 2.5.0 (GTK+ 2.10.14; i686-pc-mingw32)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit