Vectorization is a nice concept in optimisation. It allows simulaneous calculations using special units in the processor. It is working only on special cases. I tried to apply to structure factors calculations. Fortran does not allow you to write vector code as you would do in C. You can only rely on autovectorization from the …
Category Archive: Pascal’s diary
Permanent link to this article: http://blog.debroglie.net/2012/01/20/autovectorizatio/
Dec 10
Plotting libraries
Permanent link to this article: http://blog.debroglie.net/2011/12/10/plotting-libraries/
Oct 28
Loop tiling
This post is the continuation of the previous one on: CPU starvation I needed to rewrite a part of the code and it was a good opportunity to change the algorithm of the variance calculation. I was using the naive implementation: the first pass is the calculation of the mean, the second pass the calculation …
Permanent link to this article: http://blog.debroglie.net/2011/10/28/loop-tiling/
Oct 25
CPU starvation
A few weeks ago, I discovered that one of my programs has some cpu starvation issues. A cpu is starved when is waiting for the data. The most common cases are due high load on the disk but it can happen that even the RAM can be too slow. As I am just using a …
Permanent link to this article: http://blog.debroglie.net/2011/10/25/cpu-starvation/
Aug 09
IUCR 2011
I will be at the IUCR meeting in Madrid if anybody want to chat with me about computing/packaging/whatever, they are welcome I’ll be presenting a poster on Linear transformations of variance/covariance matrices. abstract nº 1593 in MS62 Crystallographic Software: the Library Approach on August 27-28.
Permanent link to this article: http://blog.debroglie.net/2011/08/09/iucr-2011/
Aug 06
Playing with postfix/dovecot
I am hijacking my own blog… I need to add spamassassin now and therefore I need some junk, here is for you little bad bots: test@genea4p.net
Permanent link to this article: http://blog.debroglie.net/2011/08/06/playing-with-postfixdovecot/
Jul 26
Code optimisation
A while ago, I discussed a bit about code optimisation using valgrind: Spot bottlenecks. At the end I obtained something like 1sec for about 4000 reflections. Meaning about 250-500us/refl. In the meantime, I needed a much faster version. I am using Monte Carlo simulation which is very demanding. Here is the old code: The part …
Permanent link to this article: http://blog.debroglie.net/2011/07/26/code-optimisation/
Jan 21
Crystallographic Software Fayre 2011
At the IUCr Congress 2011 in Madrid there will again be a Software Fayre, where authors of academic and/or open-source software can present their new developments. The Software Fayre will be held from Tuesday, 23-8-2011 until Sunday, 28-8-2011. The presentations should have a tutorial character with one or more practical examples. There will also be …
Permanent link to this article: http://blog.debroglie.net/2011/01/21/crystallographic-software-fayre-2011/
Nov 14
How to cut a slice in a 3D grid
Let define a 3D-grid, the pixels are not necessarily cubic. This grid contains the electron density resulting from a fourier transform. On pixel define a basis A(a1,a2,a3) of the grid. the length of the grid cover the unit cell in 3 directions. The task is to cut a 2D-grid plane in this 3D object. Then, …
Permanent link to this article: http://blog.debroglie.net/2010/11/14/how-to-cut-a-slice-in-a-3d-grid/
Oct 03
Valgrind and kcachegrind, spot bottlenecks
I have written a few routines in fortran, optimisation is not really necessary but it always nice to have something running fast. Finding bottlenecks in the execution of your favorite home made software can be tricky. The routine I wanted to improve is about structure factor calculations. It does one thing: get the reflections from …
Permanent link to this article: http://blog.debroglie.net/2010/10/03/valgrind-and-kcachegrind-spot-bottlenecks/




