HelloWorld logo
17.06.2024. ·
1 min

Novi programski jezik Bend: fleksibilan na CPU i GPU

Nikola Garabandić, DressCode Nikola Garabandić, DressCode

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.

 

Napiši komentar
Nikola Garabandić, DressCode Nikola Garabandić, DressCode

Od malena opsednut IT-em i svim što ima veze sa njim. Pored aktivnog pisanja postova za DressCode, profesionalno se bavi Game Developmentom u Unity-u kao i učenju drugih da koriste ovaj Game Engine. Jedini je sertifikovani Unity Instruktor u Srbiji.

Iz ove kategorije