Benchmark (III) RHEL4

February 2006


After installing additional RAM into the workstation and updating the operating system to RHE4 we then ran the benchmarks again. The dual 1.6 GB Opteron workstation would not properly support SATA drives under RHE4 so we changed to ATA drives but did not use them in a RAID configuration.

Pure Raster Exercise

In this benchmark we run just the rasterizing thread to produce a bitmap in memory. There is no additional overhead associated with processing the bitmaps produced by the rasterizer. This gives us a good handle on just how fast the rasterizer runs by itself. We use the sample application gdsrip with the -format argument.

 

Raster, Format and Compress

In this benchmark we run both the raster thread and a compression/format thread to move the bitmap from memory to disk as a compressed (packbits) TIFF file. This is closer to a "real" world application. This group of tests give some indication as to how to best use memory and threads. For these tests the sample application, gds2tiff, is used.



Pure Raster Timings

Dual 1.6 GB Opteron with 7.4 GB RAM, gdsriplib v1.04, RHE4, threads = 1, DBS = 4 million

Test # Structure Pixel
(um)
Raster Buffer
(MB)
Number
of
Buffers
Time
(mm:ss)
1 pannel3 1 512 1 10:52
2 pannel3 0.5 512 1 25:29
3 TOP 1 512 1 168:10
4 TOP 1 1024 1 150:40


Comments

1. Nothing is written to disk in the above benchmarks so the change in hard drives should not make a difference.

2. Doubling the pixel resolution should increase rasterization time by 4X. It only increases 2.5X from test #1 to test #2. This implies that a considerable amount of compute time is used for other than pure raster operations such as exploding the data and checking/repairing polygons.




Raster, Format and Compress

Dual 1.6 GB Opteron with 7.4GB RAM, gdsriplib v1.04, RHE4, threads = 4, DBS = 4 million

Test # Structure Pixel
(um)
Raster Buffer
(MB)
Number
of
Buffers
Time
(mm:ss)
5 pannel3 1 512 1 17:09
6 pannel3 1 512 2 13:37
7 TOP 1 750 1 246:08
8 TOP 1 750 2 191:42
9 TOP 1 1024 1 238:32
10 TOP 1 1024 1 228:01
11 TOP 1 1024 2 183:26
12 TOP 1 2048 1 264:31
13 TOP 1 2048 2 228:10


Comments

1. Adding a second buffer (so that rasterization can simultaneously occur with compression/writing) improves throughput by about 1.25 except when the buffers are so large that the system begins to swap.

1. Test 9 & 10 use identical parameters but timing differs by about 5%. This was found due to the "state" of the system at the time the run begins.

2. Increasing the buffer size beyond a certain value does not necessarily improve throughput - if enough RAM is available one should use two smaller buffers. In this benchmark it is better to use dual 1024 MB buffers ( test#11 ) than a single 2048 buffer ( test#12 ) or dual 2048 buffers ( test#13 ).



gdsriplib Benchmark   1   2   3