eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingSzybkie zliczanie bitówRe: Szybkie zliczanie bitów
  • Data: 2010-07-28 10:19:01
    Temat: Re: Szybkie zliczanie bitów
    Od: Wojciech Muła <w...@p...null.onet.pl.invalid> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    "Sakujami" <s...@n...gmail.to> wrote:

    > Jak szybko zliczać bity unikając 32-krotnego lda dwusłowa przejścia w pętli
    > i porównywniau z maską. Funkcje podające numer pierwszego i ostatniego bitu
    > są szybkimi instrukcjami procesora a co ze zliczaniem? A może jest jakaś
    > instrukcja MMX do tego?

    Nowsze procesory, mające rozszerzenie SSE4.2 posiadają instrukcję popcnt.

    W młodszych procesorach można stosować różne algorytmy. Dla krótkich słów
    najprościej zrobić tablicę z prekalkulowaną liczbą bitów dla bajtów, albo
    lepiej użyć metody 'Counting bits set, in parallel' z
    http://graphics.stanford.edu/~seander/bithacks.html.

    BTW jak się okazało, mój sposób z rozkazami SSS3 ma porównywalną
    szybkość ze sprzętowym popcnt przy dużych ilościach danych:
    http://wm.ite.pl/articles/sse-popcount.html

    w.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: