Profile

Cover photo
Jukka Suomela
193 followers|194,654 views
AboutPostsPhotos+1's

Stream

Jukka Suomela

Shared publicly  - 
 
Our new course "Programming Parallel Computers" is soon over — all material is now available online.

This was an optional Master-level course, and I was expecting just a handful of students, but I was positively surprised to see that we got more than 90 registrations. And based on the preliminary course feedback, there clearly was lots of demand for this kind of course.

This was a practical hands-on course, during which the students learned how to actually get the best possible performance out of modern CPUs and GPUs. In many cases, students started with implementations that used less than 1% of the theoretical performance of the CPU, and after learning about instruction-level parallelism, vectorisation, multithreading, and efficient use of caches, they were able to get more than 50% of the theoretical maximum performance, in non-trivial practical applications.

It was a lot of work to put together this kind of a course, but I also got lots of expert help with it. We had two other lecturers who helped especially with the parts related to GPU programming: Samuli Laine from Nvidia, and Jaakko Lehtinen who is affiliated with both our university and Nvidia.

Our course was also supported by the kind folks at CSC (the Finnish center for scientific computing), who put together a new frontend for their cloud service so that it is easy to provide our students with access to CSC's high-end servers — many thanks in particular to Aleksi Kallio, Olli Tourunen, Harri Hämäläinen, and Kalle Happonen.

I would also like to thank Aalto IT people who kindly tolerated my numerous requests for software installations and configuration changes for our classroom computers. And finally, many thanks to my teaching assistants, +Joel Rybicki and +Tuomo Lempiäinen, who did most of the hard work related to e.g. the grading of the exercises!

#parallelcomputing   #parallelprogramming   #simd   #openmp   #cuda   #AaltoUni  
Overview. This is a practical hands-on course on algorithm engineering for modern parallel computers. You will learn how to design programs that make the best possible use of the computing power of multicore CPUs and GPUs.
1
Add a comment...

Jukka Suomela

Shared publicly  - 
 
 
Did you know you could get bibtex directly from a doi? It's called DOI content negotiation and it can do a lot of other really cool tricks.

I don't know how to do get bibtex from the browser but this works on the command line:

curl -LH "Accept: application/x-bibtex" http://dx.doi.org/10.1007/s11083-012-9252-6

Here is the magic output:

@article{Dorais_2012,
doi = {10.1007/s11083-012-9252-6},
url = {http://dx.doi.org/10.1007/s11083-012-9252-6},
year = 2012,
month = {mar},
publisher = {Springer Science $\mathplus$ Business Media},
volume = {30},
number = {2},
pages = {415--426},
author = {Fran{\c{c}}ois Gilbert Dorais and Steven Gubkin and Daniel McDonald and Manuel Rivera},
title = {Automorphism Groups of Countably Categorical Linear Orders are Extremely Amenable},
journal = {Order}
}

http://www.crosscite.org/cn/
DOIs provide a persistent link to content. They identify many types of work, from journal articles to research data sets. Typically, someone interacting with DOIs will be a researcher, who will resolve DOIs found in scholarly references to content using a DOI resolver. Such researchers may not ...
1 comment on original post
2
Add a comment...

Jukka Suomela

Shared publicly  - 
 
In the exercises of my parallel programming course, our students came across with a piece of code that does not perform as well as it should. This turned out to be a fairly interesting example of compilers doing optimisations that are too clever.

In brief, here the compiler should have trusted that CPUs know how to do branch prediction. Using branch predication (e.g. conditional moves) just makes things much worse.

#gcc  
C++ code. This is the performance-critical inner loop from a student's solution to task IS1. Original version. for (int y0=0; y0<=ny-h; y0++) { for (int x0=0; x0<=nx-w; x0++) { y1 = y0 + h; x1 = x0 + w; vXc = S00[y1*snx + x1] - S00[y1*snx + x0] - S00[y0*snx + x1] + S00[y0*snx + x0]; ...
5
Pat Morin's profile photoJukka Suomela's profile photo
3 comments
 
And in case someone is wondering:

(1) I tried to use __builtin_expect to tell GCC that the condition is expected to be false. This did not make any difference.

(2) I tried to use -fno-if-conversion and -fno-if-conversion2 to disable branch predication. This did not make any difference here, either.

Apparently certain code patterns just look like too good candidates for predication.
Add a comment...

Jukka Suomela

Shared publicly  - 
 
 
PODC 2015 (ACM Symposium on Principles of Distributed Computing) list of accepted papers now online: http://www.podc.org/podc2015/program/

#PODC2015Spain  
2 comments on original post
2
Add a comment...

Jukka Suomela

Shared publicly  - 
 
Here are the papers from our group that were accepted to PODC 2015 as regular papers:

— Algebraic Methods in the Congested Clique: http://arxiv.org/abs/1503.04963
— Towards Optimal Synchronous Counting: http://arxiv.org/abs/1503.06702
— Improved Analysis of Deterministic Load-Balancing Schemes: http://arxiv.org/abs/1404.4344

Apparently there were 191 submissions, 45 accepted as regular papers, 10 as brief announcements.

#PODC2015Spain  
6
Add a comment...

Jukka Suomela

Shared publicly  - 
 
 
The track C (Foundations of Networked Computing) acceptances are also online at http://www.kurims.kyoto-u.ac.jp/icalp2015/accepted-ICALP-C.html — track B (Logic, Semantics, Automata and Theory of Programming) is still listed as forthcoming.
Noa Avigdor-Elgrabli, Sungjin Im, Benjamin Moseley and Yuval Rabani. On the Randomized Competitive Ratio of Reordering Buffer Management with Non-Uniform Costs. Yixin Cao. Unit Interval Editing is Fixed-Parameter Tractable. Andreas Emil Feldmann, Jochen Koenemann, Isaac Fung and Ian Post.
View original post
1
Add a comment...

Jukka Suomela

Shared publicly  - 
 
Unpleasant surprises — I just installed the usual recommended updates to my Mac laptop, and this is what I got:

$ git --version
git version 2.3.2 (Apple Git-55)

How can I now easily get a pre-2.2 version of Git? Homebrew isn't helping, either.

#git #osx
1
Juhani Simola's profile photoDavid Eppstein's profile photoJukka Suomela's profile photo
3 comments
 
+David Eppstein: Git 2.2 makes it difficult to use large git repositories: http://stackoverflow.com/questions/27454259/git-2-2-x-updates-timestamps-of-old-pack-files-for-no-good-reason

Yes, this seems to be a Yosemite thing.
Add a comment...
Have them in circles
193 people
Martin Schwarz's profile photo
Joel Rybicki's profile photo
brian silva's profile photo
Claudio Omar Biale's profile photo
Juhana Laurinharju's profile photo
Amr Abdelsamee's profile photo
Tuomas Puikkonen's profile photo
Ema Loz's profile photo
Marko Jurmu's profile photo

Jukka Suomela

Announcements  - 
 
PODC 2015 awards announced:

Leonid Barenboim will receive the Doctoral Dissertation Award for “Efficient Network Utilization in Locality-Sensitive Distributed Algorithms.”

Leonid Barenboim will receive the Best Paper award for “Deterministic (Δ+1) Coloring in Sublinear (in Δ) Time, in Static, Dynamic and Faulty Networks.”

Mohsen Ghaffari will receive the Best Student Paper award for “Near-Optimal Scheduling of Distributed Algorithms.”

#PODC2015Spain  
4
1
Stephen Paul King's profile photo
Add a comment...

Jukka Suomela

Shared publicly  - 
 
 
New blog post is our joint effort with Sergei Vassilvitskii: "Models for Parallel Computation (Hitchhiker's Guide to Massively Parallel Universes)": http://grigory.us/blog/massively-parallel-universes/
View original post
2
1
Shantanu Sharma's profile photo
Add a comment...

Jukka Suomela

Announcements  - 
 
PODC 2015 (ACM Symposium on Principles of Distributed Computing) list of accepted papers now online: http://www.podc.org/podc2015/program/

#PODC2015Spain  
3
1
Hengfeng Wei's profile photoJukka Suomela's profile photo
2 comments
 
Usually the official versions are online roughly at the same time as when the conference is held, i.e., late July.
Add a comment...

Jukka Suomela

Shared publicly  - 
 
"Incorrect Date on DNG Images from Camera2 API"

The possibility of getting DNG files from modern Android phones is a really nice feature, but this bug makes it painful to use. Timestamps in the DNG files are garbage, they can be off by several days, and this makes it difficult to organise photos in Lightroom.

The kludge that I currently use is the following: after importing files to Lightroom, I run a shell script that copies timestamps from JPEG files to DNG files. Then I can select all photos in Lightroom and use "Edit Capture Time", "Change to file's creation time".

OS X file system makes this somewhat complicated. Just using "touch" to change time stamps is not enough, you need to do something like "SetFile -d" to change the creation date.

#android5   #dng   #lightroom  
Android Open Source Project - Issue Tracker
1
Add a comment...

Jukka Suomela

Shared publicly  - 
 
Teaching practical parallel programming here at Aalto University — the first set of slides is now available online.

#parallelcomputing   #parallelprogramming   #AaltoUniversity  
Overview. This is a practical hands-on course on algorithm engineering for modern parallel computers. You will learn how to design programs that make the best possible use of the computing power of multicore CPUs and GPUs.
8
1
Juhani Simola's profile photoAlok Tiwari's profile photo
 
Looks good. I could trade a few credits' worth of Java 1.2 for this :)
Add a comment...
Work
Occupation
Assistant Professor
Jukka Suomela's +1's are the things they like, agree with, or want to recommend.
Why the Security of USB Is Fundamentally Broken | Threat Level | WIRED
www.wired.com

Computer users pass around USB sticks like silicon business cards. Although we know they often carry malware infections, we depend on antivi

It happened: Git 2.0 is here and it's full of goodies - Atlassian Blogs
blogs.atlassian.com

Git 2.0 is here and it’s full of goodies. This major release of `git` has been brewing for a long time and I am excited to go on the hunt in

Best paper awards at ICALP 2014
processalgebra.blogspot.com

The EATCS is proud to announce that the program committees of the three tracks of ICALP 2014 have selected the following papers for the best

Barcode / QR-Code / Bluetooth / RFID / NFC / DAQ / Label Software: Barco...
tec-it.blogspot.com

News on barcode software, 2D bar code software, Bluetooth, Auto-ID, RFID, AIDC, barcode labeling, reporting software, data acquisition and s

Moves
market.android.com

Moves automatically tracks your everyday life and exercise. Just carry your phone in your pocket or bag. FEATURES • Automatic Tracking: Reco

Google Play Книги
market.android.com

Google Play – это настоящий рай для книголюбов. В этом интернет-магазине вас ждут миллионы книг, в том числе бесплатных. Выберите из новинок

GPS Test
market.android.com

The GPS Test app for Android is a utility that shows GPS information read from your phones internal GPS. Will support GLONASS phones. The ap

Google Play Music
market.android.com

Google Play Music makes it easy to discover, play and share the music you love on Android and the web. With our new All Access service, you

Feedly News Reader. Blogs. RSS
market.android.com

"Feedly is what you needly" - David Pogue, New York Times.Feedly is a new way to browse the content of your favorite news sites, rss feeds,

Dropbox
market.android.com

Dropbox 提供免費的服務,讓您可以隨時隨地存取您所有的相片、文件和影片。一旦在電腦上安裝了 Dropbox,您儲存在 Dropbox 的任何檔案都會自動儲存到您所有的電腦、手機及 Dropbox 網站。有了 Dropbox 應用程式,您可以把重要的東西全部帶著走。即使是出門

Andropas Pro
market.android.com

Andropas Pro lisää uusia ominaisuuksia Andropas-ohjelmaan. Tue Andropaksen kehitystä ja osta Andropas Pro.Ominaisuudet: - Suosikkipysäkit ja

younited by F-Secure
market.android.com

With younited you can have all your stuff in a safe cloud. You can access your pictures, videos, music and docs with your Android and other

The selected-papers network
gowers.wordpress.com

This post is to report briefly on a new and to my mind very exciting venture in academic publishing. It's called the Selected Papers Network

What can be decided locally without identifiers? | Abstract Talk
www.abstract-talk.org

Abstract. Do unique node identifiers help in deciding whether a network G has a prescribed property P? We study this question in the context

The On-Line Encyclopedia of Integer Sequences™ (OEIS™)
oeis.org

The On-Line Encyclopedia of Integer Sequences™ (OEIS™). Enter a sequence, word, or sequence number: Hints. Note: Advanced searches are now m

ACM Digital Library
portal.acm.org

www.acm.org - The premier society in computing brings you the Computer Portal.

Fingerpori - HS.fi
www.hs.fi

Löydät Fingerporin Heimon, Allanin ja Mustanaamion HS.fi:stä. Luettavissa myös kaikki stripit vuodesta 2007.

Viivi &amp; Wagner - HS.fi
www.hs.fi

Parhaat stripit ja parisuhteen hoitovinkit. Viivi &amp; Wagner -arkistosta löydät kaiken parisuhteesta sian ja naisen sanoin. Jaa parhaat st

The Geomblog: Models for MapReduce
feedproxy.google.com

Models for MapReduce. I&#39;ve been listening to Jeff Phillips&#39; comparison of different models for MapReduce (he&#39;s teaching a class

Free online dictionary definitions for learners of English ...
www.oxfordadvancedlearnersdictionary.com

Free online dictionary definitions and pronunciations for learners of English from the bestselling Oxford Advanced Learner&#39;s Dictionary.