Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

I helped write parallelknoppix when I was an undergrad - our university's 2nd cluster ended up being a bunch of laptops with broken displays running it. Took me a whole summer.

Then the next semester I am denied the ability to take a parallel computing class because it was for graduate students only and the prof. would not accept a waiver even though the class was being taught on the cluster me and a buddy built.

That I still had root on.

So I added a script that would renice the prof.'s jobs to be as slow as possible.

BOFH moment :)



sort by: page size:

I helped write parallelknoppix when I was an undergrad - our university's 2nd cluster ended up being a bunch of laptops with broken displays running it. Took me a whole summer.

Then the next semester I am denied the ability to take a parallel computing class because it was for graduate students only and the prof. would not accept a waiver even though the class was being taught on the cluster me and a buddy built.

That I still had root on.

So I added a script that would renice the prof.'s jobs to be as slow as possible.

BOFH moment :)


I joked about the last advent of code, finding problems that could be parallelized and try to solve them with OpenMP. Sadly at the time I was stuck with a machine that had a god awful 2 core AMD CPU that struggled to browse the web.

I've had such a situation and we were lucky that we had written software that makes dealing with embarassingly parallel problems embarassingly scalable.

It is not easy finding people with good parallel programming skills. Hopefully, this will help things along.

GNU Parallel rules! I made $100K with just a few lines of code involving Parallel.

I use parallel all the time for embarrasingly parallel scientific computations on a cluster. It is very easy to use and elegant, and it's one of the programs I'm most grateful for.

Recently the developers fixed a major bug for me, that child jobs on other nodes would not be killed when parallel was killed. This was the only thing stopping me from recommending it to my labmates, now there's no reason not to use it!


Takeaway: parallel programming is hard even for Googlers.

You can do that, but then they won't accept your solution, so you just spend time developing a parallel system that you need to support yourself until the end of time. Been there, done that.

Writing parallel-processing applications isn't easy. I run a non-profit tech R&D organization; and we have internships where under-grad students can try their hand at coding in "a corporate environment" with joint development, toolchains, and the whole shebang.

We gauge the students by how much they accomplish in how much/little time and how elegant their solution is. And at towards the end of the internship, we invariably ask the best students to add some form of multi-threading or parallel-processing to the application they're working on (in C++, C#, or Java mostly) and even our best students have trouble with getting proper parallel-processing code working (and these guys had done brilliantly elsewhere).

I personally learned it the hard way, scouring the 'net for all the different methods until I built my own "templates" that work great for me.


So we took a performance-sensitive embarrasingly-parallel problem and made it run on a slow single-threaded language?

Sounds like fun ;)


I took the parallel programming class back in college. Even though we implemented several good examples using parallelism like matrix multiplications and different methods of achieving it using the GPU or distributed computers, the main goal of the class was to analyze and see what problems could be processed in parallel and also how to divide the problem in small chunks in order to do so. It was a lot of fun.

Your parallel computing approach sounds intriguing! Could you provide an example script? I would like to look into this. If you like you could open an issue as a feature request and provide a code snipped there.

Yes! Thank you! Have you done any parallel programming?

Yea seriously, just get everyone to bring in their old laptops/computers and whatever else they can find to do this.

Parallelization is the way to go for a task like this.


I knew for the lack of money. But the parallelization idea, I didn't. Thanks for posting !

Fun fact: GNU Parallel was originally a wrapper script that used `make` for the parallelization: https://www.gnu.org/software/parallel/history.html

I took parallel algorithms with the guy that wrote that framework. Interesting to see it pop up on HN.

I took a parallel programming class in 1993 and programmed HP Fortran on a connection machine, but not much more than one assignment to do iterative matrix averaging in parallel. It was fun, but it was just like programming fortran on any other platform since I didn't have physical access to the machine, just remote access.

This tool found it's niche as there were no reliable way to do parallel jobs with just one command.
next

Legal | privacy