I’ve got a lot of S1a scenes which I am processing using the SNAP toolbox v3.0 and the following steps:
- Radiometric calibration
- Terrain flattening
- Terrain correction
- Linear to dB conversion
Both TF and TC use a subset of a 200m DEM for the region of interest, and the TC step also reprojects the data to a polar stereographic projection. The results look pretty good from initial investigation.
For the processing scheme, I’ve created a graph XML file using the SNAP gui. I then use some shell scripting to update this XML file for each of the S1a scenes I have in a specific folder. Then I run GPT for each of the XML files, one at a time.
I have tested this on two systems:
- Mac OS X with a 6-core Intel i7 processor, 32Gb ram, fast RAID storage.
- Ubuntu linux 16.04 with two 18-core Intel Xeon E5 processors (36-cores total), 64GB ram, fast nvme SSD storage.
The Mac is by far quicker, despite having weaker specs. The only advantage the mac has is a faster clock speed.
The problem appears to be with how the CPUs are being utilized. On the Mac, its 12 threads all have high cpu usage. On the linux server, it utilizes 36 of the available 72 threads. Using htop to check the usage, threads 1-36 all have high usage, with very little/no usage in threads 37-72.
Mac htop output:
Linux htop output:
Any idea what’s going on here? I would expect that even if only one CPU is being stressed on the linux machine, that it would still be faster than a 6-core/12-thread machine.