Category Archive: Pascal’s diary

Jan 20

Autovectorization

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 …

Continue reading »

Permanent link to this article: http://blog.debroglie.net/2012/01/20/autovectorizatio/

Dec 10

Plotting libraries

test

Small reveiw and feelings about a few graphical libraries: gnuplot, matplotlib, pgplot, plplot, dislin and R.

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 …

Continue reading »

Permanent link to this article: http://blog.debroglie.net/2011/10/28/loop-tiling/

Oct 25

CPU starvation

perftop

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 …

Continue reading »

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

Fcalc subroutine fully optimised

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 …

Continue reading »

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 …

Continue reading »

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

slice

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, …

Continue reading »

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

Valgrind - before

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 …

Continue reading »

Permanent link to this article: http://blog.debroglie.net/2010/10/03/valgrind-and-kcachegrind-spot-bottlenecks/

Performance Optimization WordPress Plugins by W3 EDGE