Snappy vs. GPT


According to your experince, in terms of processing performance (eg. processing time) what is performing better, running an analysis using snappy or GPT? I am thinking for example of a tipical S1 / S2 preprocessing chain? Any preference or something that should be highlighted apart from the obvious?


GPT is a lot better. If you want to use GPT from Python please look into the wrappe snapista.

GitHub - snap-contrib/snapista: SNAP GPT thin layer for Python

Thanks for the answer! In which sense is it better? memory management ?

It is simply a lot faster since everything happens in the Java VM.

1 Like

Snappy can be used to automate a series of steps being done in the GUI when GPT does not provide the same capability. When snappy first appeared, gpt had a rather short list of operators, so there was greater need for calculations in Python, e.g., using numpy. Memory management becomes an issue of you try to loop over a bunch of input files as Python and Java have different approaches to memory management.

There is considerable “context switching” overhead moving between the Java JVM and Python, so it performance matters and GPT has the required functionality, you don’t want to use snappy.

1 Like

Thanks for the detailed overview.