-
Data: 2010-02-19 21:48:47
Temat: Re: BCB Moj ulubiony kod;)
Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Mariusz Marszałkowski pisze:
> On 18 Lut, 10:20, Qbab <b...@p...onet.pl> wrote:
>> W dniu 2010-02-11 08:57, Wojciech "Spook" Sura pisze:
>>
>>> Bastion wrote:
>>>> Kolego, ja tak nie pisze tylko przedstawiam rozwiazanie pewnego
>>>> problemu. Laskawie pochyl glowe i zastanow sie jak w 5 linijkach kodu
>>>> lepiej mozna zwizualizowac rozwiazanie. Czekam na kod...
>>> Zacznijmy od tego, że nawet nie zabierałbym się do projektowania aplikacji
>>> myśląc panicznie, żeby zmieścić się w n linijkach. Płacisz podatek od każdej
>>> napisanej linii kodu? Jeśli radość sprawia Ci upychanie programu w
>>> niewielkiej przestrzeni, to raczej wyślij Twój pomysł na IOCCC niż chwal się
>>> na grupach.
>> Pamiętam czasy gdy upychanie kodu wynikało z konieczności, czasem
>> upychało się dwie zmienne w jednym bajcie bo z góry wiedziało się ile
>> bitów zajmą maksymalnie. Ale tego nie zrozumie nikt kto nie startował w
>> czasach gdy komputery miały mniej niż 64 kilobajty pamięci :)
>
> Koniecznosc upychania danych w bity jest caly czas akualna. Oczywiscie
> tylko tam, gdzie wazna jest wydajnosc. Propoponuje zmierzenie czasu
> wykonania tego kodu dla roznych wielkosci S. Parametr N zostaje taki
> sam, wiec ilosc operacji nie ulega zmianie, zmianie ulega tylko
> rozmiar
> danych. Duze S oznacza dane nie upakowane, male S oznacza dane
> upakowane do malej tablicy.
Tu czytasz dane i to w najgorszy możliwy sposób - dostęp losowy. Odwrócę
kota ogonem - na 8 Xeonach:
$time ./kolo_siebie
real 0m16.903s
user 1m52.579s
sys 0m0.188s
$ time ./oddalone
real 0m1.955s
user 0m7.848s
sys 0m0.000s
To jest dokładnie ten sam kod, ale w jednym wypadku dane upakowane i
false-sharing daje o sobie znać, w drugim nie.
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 19.02.10 22:41 Mariusz Marszałkowski
- 19.02.10 22:58 Michoo
- 19.02.10 22:59 Bastion
- 19.02.10 15:03 Wojciech Muła
- 19.02.10 23:18 Bastion
- 19.02.10 23:21 Bastion
- 20.02.10 00:03 Jędrzej Dudkiewicz
- 20.02.10 00:14 Jędrzej Dudkiewicz
- 20.02.10 04:31 Mariusz Marszałkowski
- 20.02.10 23:51 Bastion
- 25.02.10 22:22 Bastion
- 25.02.10 22:33 Bastion
- 25.02.10 23:00 Bastion
- 25.02.10 23:37 Jacek Czerwinski
- 26.02.10 18:05 Michoo
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-21 Re: Dla mr. J.F`a, Trybuna i Wiesiaczka którzy "troszczą" się o państwowe i u których 0 pragmatyzmu
- 2024-11-21 Re: Dla mr. J.F`a, Trybuna i Wiesiaczka którzy "troszczą" się o państwowe i u których 0 pragmatyzmu
- 2024-11-21 Re: Dla mr. J.F`a, Trybuna i Wiesiaczka którzy "troszczą" się o państwowe i u których 0 pragmatyzmu
- 2024-11-20 "betamaxy" i inne voip-y dzisiaj
- 2024-11-21 Strach się bać
- 2024-11-21 Koniec smrodów
- 2024-11-20 Krematorium
- 2024-11-20 Taki tam szkolny problem...
- 2024-11-20 LIR2032 a ML2032
- 2024-11-20 SmartWatch Multimetr bezprzewodowy
- 2024-11-21 Środa Wielkopolska => Konsultant SAP <=
- 2024-11-21 Łódź => Spedytor Międzynarodowy <=
- 2024-11-21 Wrocław => Inżynier bezpieczeństwa aplikacji <=
- 2024-11-21 Kraków => Lead Java EE Developer <=
- 2024-11-21 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=