Using GnuPG for encryption and decryption

On Ubuntu install with:

apt-get install gnupg

First generate private and public key:

gpg --gen-key

Generating this key can take some time, because it needs enough randomness.

Store your public key in a file:

gpg -a --export

Although it is not necessary to store this public key, you usually will provide this public key to other people, see for example my public key.

Import public keys from other people by

gpg --import

Now encrypt a message for my-friend:

gpg -aers my-friend your-file

These options have the following effect:

  • -a: create base64 encoded output (“ASCII armored”). This is not necessary, so you can skip this option. If skipped the output is binary.
  • -e: encrypt
  • -r: recipient, here your-friend
  • -s: add signature. This is not necessary. You could drop this option from above.

Decrypting a file is the easiest part. Just type

gpg encrypted-file News and Numbers: Year 2014 in Review

Im(Press)ive! Your Year in Review published some usage statistics for the year 2014, which are quite astonishing:

  1. 18,300,771 new blogs
  2. 555,782,547 new posts
  3. 24.5 TB/h (Terabyte per hour)

Compare this with statistics from year 2013:

  1. 13,704,819 new blogs
  2. 489,281,136 new posts
  3. 667,675,929 comments

So is not only growing, they are growing faster than last year.

Downloading Binary Data, for example Boost C++ Library

Downloading the Boost C++ library is occasionally hindered by various company policies.

boost_1_57_0.7z.rc4.b64 is Boost version 1.57.0 (MD5 is 17c98dd78d6180f553fbefe5a0f57d12) in the following format:

  1. compressed with 7z, size 55 MB
  2. encrypted with RC4, password “boost”, size doesn’t change
  3. base64 encoded, size 74 MB

Encryption and encoding was done like this

openssl enc -rc4 -a -in boost_1_57_0.7z -out boost_1_57_0.7z.rc4.b64

Decrypting goes like this:

openssl enc -d -rc4 -a -in boost_1_57_0.7z.rc4.b64 -out unencrypted.7z

Announcement: 11th International Conference on Parallel Programming and Applied Mathematics

The conference will start in September 6-9, 2015, Krakow, Poland.

Parallel Programming and Applied Mathematics, PPAM for short, is a biennial conference started in 1994, with the proceedings published by Springer in the Lecture Notes in Computer Sciences series, see PPAM. It is sponsored by IBM, Intel, Springer, AMD, RogueWave, and HP. The last conference had a fee of 420 EUR.

It is held in conjunction with 6th Workshop on Language based Parallel Programming.

Prominent speakers are:

Continue reading

Setting up SLURM on Multiple Machines

SLURM is a job-scheduler for Linux. It is most useful if you have a cluster of computers. But if you only have two or three computers it can be put to good use. SLURM is an acronym for Simple Linux Utility for Resource Management.

SLURM is used by Tianhe-2, the most powerful supercomputer in the world with 3,120,000 Intel Xeon E5 2.2 GHz cores (not CPUs). It is in effect a combination of 16,000 computer nodes. Tianhe-2 is located in Guangzhou, China. SLURM is also used by Odyssey supercomputer at Harvard with 2,140 nodes equipped with AMD Opteron 6376 CPUs. Frankfurt’s supercomputer with 862 compute nodes, each equipped with AMD Opteron 6172 processors, also uses SLURM. Many other HPC sites use SLURM.

What is the catch of a job-scheduler? While a single operating system, like Linux, can manage jobs on a single machine, the SLURM job-scheduler can shuffle jobs around lots of machines, thereby even out the load on all of them.

Continue reading