Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #33823
| From | heby <heby@poczta.onet.pl> |
|---|---|
| Newsgroups | pl.comp.programming |
| Subject | Re: Wydajność OpenCL |
| Date | 2020-03-24 21:35 +0100 |
| Organization | A noiseless patient Spider |
| Message-ID | <r5dqug$sic$1@dont-email.me> (permalink) |
| References | <c474307f-ba6b-4c59-9d5e-a289203ec68e@googlegroups.com> <3d171e03-6864-4baf-acb7-519173a49f25@googlegroups.com> <r5dhol$h0v$1@dont-email.me> <34b7a503-d78e-4b34-bf45-38868903b659@googlegroups.com> |
On 24/03/2020 21:19, M.M. wrote:
> dojdzie - ale pewności nie mam. Szykuję się do napisania kilku
> kolejnyhch mikro programików do dalszych testów.
Zainteresuja się książkami do OpenCL i CUDA. Są dostępne w PL i dość
jasno tłumaczą ograniczenia architektur obu technologii (w sumie są to
ograniczenia identyczne).
> Czy coś mniej lub bardziej ważnego zapomniałem?
Najzwyczajniej poszukaj literatury. Algorytmika stosowana w OpenCL/Cuda
jest inna niż w normalnym programowaniu imperatywnym na CPU. To jest od
dawna rozpracowane, nie musisz szukać np. metody sortowania, są gotowe
algorytmy które albo są optymalne dla tej organizacji albo są bliskie.
>> A potrafisz napisać algorytm który poprawnie (tzn blisko optymalnego)
>> syntezuje się na FPGA? Co prawda prawie każdy kod w języka HDL można
>> zsyntezować, ale zdecydowanie nie każdy powinno się syntezować.
> Jestem laikiem w tej dziedzinie, przeczytałem na wyrywki jedną przypadkową
> pracę znalezioną w internecie na ten temat. Ktoś opisywał, że poniższy
> algorytm (SHIFT) na FPGA/ASIC można zrobić w jednym takcie:
> for( i=256 ; i>0 ; i-- ) {
> tab[i] = tab[i-1];
> }
Taka pętla na FPGA nie istnieje. Zostaje zsyntezowana do "czegoś" co
dalece odbiega od pętli. I niekoniecznie wyrazi to co chciał uzyskać
autor. Być może zostanie rozbita na 256*x przerzutników a być może wcale
nic nie jest potrzebne bo można zastosować multipleksery wiec wychodzi
układ kombinacyjny. To czy syntezer dobrze to zrozumie i dobrze
zsyntezuje jest kłopotliwe i języki C-like niespecjalnie nadają się do
wyrażenia tego przez programistę. W FPGA sekwencyjność wyrażana jest w
inny sposób niż linia po lini kodu źródłowego, preferuje się
programowanie eventowe, podaje hinty jak coś ma działać, niektóre
konstrukcje równoleglają się same mimo że nie widać tego w kodzie itd itp.
> Na GPU i na CPU (chyba) taka optymalizacja nie jest możliwa, i to bez względu
> na ilość rdzeni. Czy kompilatory OpenCL potrafią takie algorytmy efektywnie
> skompilować na FPGA/ASIC - nie mam pojęcia.
Z róznych opisów tu i tam wynika że nie potrafią w tej chwili
optymalizować tego typu rzeczy w sposób bliski optymalnemu. Nie oznacza
to że robią złą robotę, ale programista HDL jest w stanie wyrazić
sensowniej co chce bo ma do dyspozycji niższe poziomy abstrakcji do
sprzętu. Wygląda na to że technologia jest jeszcze nie do końca sensowna
i jest wątpliwość czy pisanie na FPGA w jakimś dialekcie C z OpenCL jest
prawidłowym kierunkiem. Być może pojawi się jakiś inny język w OpenCL
który pozwoli na detaliczność opisu taką jak daje VHDL czy Verilog.
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-18 05:34 -0700
Re: Wydajność OpenCL fir <profesor.fir@gmail.com> - 2020-03-21 03:17 -0700
Re: Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-21 13:10 -0700
Re: Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-21 15:05 -0700
Re: Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-22 12:34 -0700
Re: Wydajność OpenCL fir <profesor.fir@gmail.com> - 2020-03-22 16:53 -0700
Re: Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-22 17:37 -0700
Re: Wydajność OpenCL heby <heby@poczta.onet.pl> - 2020-03-24 18:58 +0100
Re: Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-24 13:19 -0700
Re: Wydajność OpenCL heby <heby@poczta.onet.pl> - 2020-03-24 21:35 +0100
Re: Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-26 03:53 -0700
Re: Wydajność OpenCL Mateusz Viste <mateusz@xyz.invalid> - 2020-03-26 12:12 +0100
Re: Wydajność OpenCL fir <profesor.fir@gmail.com> - 2020-03-26 04:37 -0700
Re: Wydajność OpenCL fir <profesor.fir@gmail.com> - 2020-03-26 04:40 -0700
Re: Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-26 05:57 -0700
Re: Wydajność OpenCL fir <profesor.fir@gmail.com> - 2020-03-26 06:22 -0700
Re: Wydajność OpenCL heby <heby@poczta.onet.pl> - 2020-03-26 18:24 +0100
Re: Wydajność OpenCL "M.M." <mmarszik@gmail.com> - 2020-03-26 10:57 -0700
csiph-web