-
Data: 2011-11-03 06:21:17
Temat: Re: na 4rech procesorach
Od: "Robert Winkler" <n...@n...org> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> nie wiem co nazywasz pamiecia ekranu, ale ja renderuje
> do zwyklej tablicy bajtow (konkretnie jest to wskaznik jaki
> zwraca funkcja createDibSection, ale jest to raczej zwykla tablica
> ramu tyle ze zaalokowana wewnetrznie przez winde, pozniej dopiero
> to sie blituje do pamieci video);
Nie podajesz źródeł więc skąd mamy wiedzieć
że robisz to z wykorzystaniem bitmapy utworzonej poza ekranem.
Załóz project na przykład na github i wrzuć źródła.
> czy takie pisania do zwyklej tablicy (kazdy watek do swojej czesci)
> tez trzeba synchronizowac? byloby to glupie i niedobre
Jesli jestes absolutnie pewiem ze jakiś fragment bitmapy
nie będzie znajdował się jednocześnie w cache dróch różnych rdzeni
(procesorów)
to nie potrzebujesz synchronizacji.
Nie jest to jednak pewne, cache nie pracuje na poziomie pojedyńczych komórek
pamięci
ale kilkunasto bajtowych linii.
(w niektórych procesorach to nawet 512 bajtów, nie jest to jednak żaden
procesor rodziny x86)
btw.
Skoro renderujesz to do bitmapy stworzonej poza pamięcią ekranu
to co za problem stworzyć 4 niezależne bitmapy,
po jednaj dla kazdego wątku.
Każda z nich zawierała by fragment całości (1/4 wysokości)
po zakończeniu wszystkich wątków przepisałbyś je BitBlt-em
do jednej bitmapy, podając odpowiedno parametr Y gdzie ma być ona skpiowana.
Widziałeś jak wygląda raytracing na maszynie z 80-ma równoległymi wątkami?
(4 Xeony po 10 rdzeni każdy plus HT żeby podwoić liczbe wątków)
http://www.youtube.com/watch?v=zbokPe4_-mY
--
__________
Pozdrawiam
Robert Winkler
Następne wpisy z tego wątku
- 03.11.11 06:26
- 03.11.11 07:23
- 04.11.11 02:32 Wiktor S.
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 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??
Najnowsze wątki
- 2025-02-10 Spalił się spaliniak
- 2025-02-10 zarowka wifi - z sensowna apka lub lepiej albo lokalnie lub przez web. I zeby harmonogram miala
- 2025-02-10 Chrzanów => Programista NodeJS <=
- 2025-02-10 Kraków => DevOps Engineer (Junior or Regular level) <=
- 2025-02-10 Dlaczego takie preferencje banków?
- 2025-02-10 Białystok => iOS Developer (Swift) <=
- 2025-02-10 Mińsk Mazowiecki => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-10 Białystok => System Architect (Java background) <=
- 2025-02-10 Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- 2025-02-10 Szczecin => Senior Field Sales (system ERP) <=
- 2025-02-10 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-02-10 Chrzanów => Specjalista ds. public relations <=
- 2025-02-10 Chrzanów => NodeJS Developer <=
- 2025-02-10 Warszawa => JavaScript / Node / Fullstack Developer <=
- 2025-02-10 Gliwice => Ekspert IT (obszar systemów sieciowych) <=