Dodane: | 14.08.2007 |
---|---|
Autor: | Wojciech Muła |
Uwaga: zobacz główną stronę projektu sse2string.
Testowane funkcje zostały napisa ręcznie w asemblerze (wstawki gcc). Przyspieszenie jest wyznaczane względem standardowych funkcji glibc.
Testy są przeprowadzane na łańcuchach dość krótkich, do 256 znaków. Przez długość (n) rozumiem tutaj miejsce w którym badana funkcja kończy działanie, a więc dla strlen będzie to pozycja znaku \000, dla strchr pozycja szukanego znaku bądź \000, a dla strcmp pozycja różnych znaków bądź koniec jednego z łańcuchów.
W funkcjach strlen unrolled i strcmp unrolled wewnętrzna pętla została [nieudolnie] rozwinięta.``
Komputery na których przeprowadzano testy:
Przede wszystkim dziękuję wszystkim za poświęcony czas i pomoc. Widać, że jest o co walczyć! Funkcje są na razie w fazie testów, więc przedstawionych tutaj wyników w żadnym razie nie należy uważać za ostateczne.