Changes

Jump to: navigation, search

DPS921/Halt and Catch Fire

9 bytes removed, 20:36, 1 December 2016
What is Go?
== Parallel Programming in Go ==
=== What is Go? ===
*The Go language is an open source project to make programmers more productive.<br/><br/>*It is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multi-core and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.  
=== By what means does Go allow parallelism? ===
*Go allows multi-core programming using concurrency methods, and enables the ability to parallelize.
===== Results - Serial vs parallel Performance =====
Evaluating the time it takes the serial and parallel version versions of the program to run through the Monte Carlo Iterations for 1,000,000,000 (1 billion) iterations.<br/>
[[Image:MCSim.PNG|alt=Monte Carlo Simulations]]<br/>
We can see that the parallel version gives us about a '''~4x performance gain''' matching our benchmark results.
147
edits

Navigation menu