Previous | Next --- Slide 43 of 56
Back to Lecture Thumbnails
yey1

Is Scala's parallel collection a type of Data-parallel model abstraction? http://docs.scala-lang.org/overviews/parallel-collections/overview.html

taichia

It seems to be so, though it technically won't fit under the "Today" form of Data-parallel model. The creators of the language make parallelizing your code for simple vector computation very easy. As shown in the website:

val list = (1 to 10000).toList

list.map(_ + 42)

This is a sequential way to add the number 42 to each element in the list. In scala, it seems to be that you can easily just add a par or parallel(based on what operation you want to perform). so in this case, we can write

list.par.map(_ + 42)

According to the slides, it doesn't seem to be the case that you're mapping a function to a list, but instead you're putting the list through a function.

I'm not entirely confident in my scala programming, as my only exposure to this language is from my highschool friends who don't go to this school.

LazyKiller

Here I'm confused of the difference between SIMD and SPMD, As I understand, SIMD is a vectorization at instruction level, while SPMD is a high level abstraction at programs and can split different parts across multi-processors.