The thesis explores and compares parallel programming in the programming
languages C, Go and Julia. Through a thorough analysis of language structures,
synchronization mechanisms, and libraries, we determined which language
and approach are most suitable for solving specific problems. We
began with researching each language individually. Then, we compared the
languages in two ways. Analytically, we compared the approaches of one language
with the equivalents or alternatives in the other two languages. Next,
we performed time measurements on examples of our implementations, which
allowed us to compare the efficiency of the languages. Finally, based on the
analysis and results, we prepared guidelines for using these languages in parallel
programming.
|