Blog

Blog je mesto gde možeš da čitaš o navikama IT-evaca, najavama IT dešavanja, aktuelnostima na tržištu, savetima i cakama kako da uspeš na ovom dinamičnom polju.
Mi pratimo trendove, na tebi je da se zavališ u fotelju i čitaš :)

Tag: CUDA (1 rezultat)
17.06.2024. ·
1 min

Novi programski jezik Bend: fleksibilan na CPU i GPU

Paralelno programiranje je dugo bio sveti gral performansnog računarstva. Da je jednostavno implementirati paralelne procese, moderni programski jezici ne bi zahtevali koncepte kao što su semafori, zaključavanja i mutexi. Bend je novi programski jezik koji se ističe po tome što poseduje tri različita runtime-a. Prvi je napisan u C-u i ne podržava paralelno programiranje. Drugi je napisan u Rust-u i omogućava paralelizam, dok je treći pisan u CUDA-i, jeziku razvijenom specijalno za GPU programe, što nije iznenađujuće s obzirom na to da ga je razvila Nvidia. Jedna od ključnih karakteristika Benda je njegova inherentna paralelnost. Ne morate se previše brinuti o tome da li je vaš kod paralelan - ono što može biti izvršeno paralelno, biće izvršeno paralelno. Na primer, izraz ( ( (1 + 2) + 3 ) + 4) ne može se izvršiti paralelno zbog zavisnosti između operacija. 3 mora sačekati da se izvrši 1 + 2, a 4 mora sačekati da se završe prethodni izrazi. Međutim, ako bismo grupisali zagrade drugačije, kao u ( (1 + 2) + (3 + 4)), tada bi 1, 2 i 3, 4 mogli biti izračunati paralelno, a zatim konačno sabrani. Iako Bend automatski brine o paralelizmu, ipak je potrebno obratiti pažnju na strukturu koda. Sintaksa Benda podseća na Python, što olakšava učenje i upotrebu. Važno je napomenuti da Bend još uvek nije u konačnoj verziji - njegove single-thread performanse su trenutno slabije u odnosu na konkurenciju. Tim programera koji stoji iza ovog jezika obećava poboljšanje performansi sa svakom novom verzijom.  

Da ti ništa ne promakne

Ako želiš da ti stvarno ništa ne promakne, prijavi se jer šaljemo newsletter svake dve nedelje.