Title

Roy Longbottom at Linkedin   Linux SDL Image Processing Benchmarks

Contents


System Details Performance Results Drive Details
Parameters and Paging CPU 32/64 Bit Comparison Linux Version Comparison
Graphics Data Transfer Speed Memory Used Comparison Disk/Drive Comparison
Ubuntu 14.04, Core i7


General

SDL_bmpspd32 and SDL_bmpspd64 benchmarks execute the same tests as the Windows version, where details and results can be found in bmpspeed results.htm. They are 32 bit and 64 bit varieties compiled to run under Linux using Simple DirectMedia Layer (SDL) functions. The benchmarks generate BMP files and measure speed of saving, loading, scrolling, rotating and editing of 0.5, 1, 2, 4 etc. to 512 MB images.

The programs automatically adjust maximum image size used, depending on available main memory, but run time parameters can be used to change this. The execution files, source code, compilation and running instructions can be found in linux_image_processing_benchmarks.tar.gz. Details of other Linux benchmarks can be found in linux benchmarks.htm. Access to an SDL library is required, specifically libSDL-1.2.so.0, and this is included in the execution file directories, in case SDL is not installed. This was the case with the Fedora installation. Access to the library file in the execution directory is enabled by the command export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/.

The benchmarks have been run on desktop, laptop and netbook PCs using Ubuntu 10.10 and Fedora 14 with GNOME 2, Ubuntu 11.04 with Unity and OpenSuse 11.4 with KDE. Source drives used were a variety of USB Flash drive sticks and local, eSATA or USB disk drives. Graphics used was from nVidia, ATI and Intel.


To Start


System Details

The benchmark provides extended details of the configuration used, as shown below. The first block of data is as provided with all my Linux benchmarks.

Memory - The first additions are details of memory utilisation, where the calculated “Memory Used” is repeated in the tests to show increased demands using larger images. The initial details shown are for 64-Bit Ubuntu. Later are results with 32-Bit Ubuntu, where only 2 GB of the available 4 GB is available.

Disk/Drive - Next, details of the directory path used is provided, the default being the one containing the benchmark execution file and initial small BMP files used. A run time parameter can select an alternative drive/directory, where copies of the small files have to be present. See also Drive Details below.

Graphics - Bit-block image transfer (bitblit or blitting) is the process of transferring a block of data to memory used for display purposes. Running under Windows, at least the smaller image data blocks are automatically cached in video RAM. This leads to some of the scrolling tests running at exceptionally fast speeds. Using SDL, it seems that these hardware functions are not provided and a special driver (x11) is used rather than the graphics hardware supplier’s software. Although the resulting speed might be much slower than via Windows, it should be borne in mind that to display a screen full of data in 10 milliseconds equates to 100 FPS (Frames Per Second) - but see Graphics Data Transfer Speed. The functions used also provide the display pixel size and details of the graphics hardware.

PCs Tested - Last below are details of PCs used for testing purposes.


 #####################################################################

  Assembler CPUID and RDTSC       
  CPU GenuineIntel, Features Code BFEBFBFF, Model Code 000006F6 
  Intel(R) Core(TM)2 CPU          6600  @ 2.40GHz 
  Measured - Minimum 2402 MHz, Maximum 2402 MHz 
  Linux Functions 
  get_nprocs() - CPUs 2, Configured CPUs 2 
  get_phys_pages() and size - RAM Size  3.87 GB, Page Size 4096 Bytes 
  uname() - Linux, roy-64Bit, 2.6.35-24-generic 
  #42-Ubuntu SMP Thu Dec 2 02:41:37 UTC 2010, x86_64 

  Memory stats from /proc/meminfo

     MemTotal:   3963.8 MB   A
      MemFree:   3181.8 MB   B
      Buffers:     46.5 MB   C
       Cached:    297.5 MB   D

  Memory Used:    438.0 MB = A - B - C - D

  Current Directory Path (getcwd) and drive space (statvfs): 
  /home/roy/all64/bmpspd
  Total MB   11263, Free MB    9446, Used MB    1817
  See files hd1.txt and hd2.txt for details of drive used

  SDL_GetVideoInfo
  hw_available flag is 0 - cannot create hardware surfaces
  Display size 1280 x 1024 pixels at 32 bits

  SDL_VideoDriverName = x11

  Graphics (command - lspci | grep -i vga > vga.txt)
  VGA compatible controller: nVidia Corporation G84 [GeForce 8600 GT] (rev a1)

 #####################################################################

 #42-Ubuntu SMP Thu Dec 2 01:41:57 UTC 2010, i686 

  Memory stats from /proc/meminfo

     MemTotal:   2012.1 MB   A
      MemFree:   1584.7 MB   B
      Buffers:     10.2 MB   C
       Cached:    133.4 MB   D

  Memory Used:    283.9 MB = A - B - C - D

 #####################################################################

  AMD Phenom II X4, 3.0 GHz with 8 GB RAM
  Asus M4A785TD-V EVO motherboard, USB boot via F8
  GeForce GTS 250 graphics card and on-board Radeon HD 4200
  USB flash/disk drives and 5400 RPM eSATA disk

  Intel Core 2 Duo, 2.4 GHz with 4 GB RAM
  Asus P5B motherboard, USB boot via F8     
  GeForce 8600 GT graphics card
  USB flash/disk drives and fast 7200 RPM eSATA disk

  AMD Athlon 64 X2, 2.2 GHz with 1 GB RAM
  Asus A8N-SLI Deluxe motherboard, USB boot via F8
  Radeon X800 XL graphics card
  USB flash drives only

  Core 2 Duo 1.83 GHz with 2 GB RAM
  Acer 7720G Laptop, automatic booting from USB
  GeForce 8400M GS graphics card
  USB flash drives only

  Intel Atom, 1.66 GHz with 1 GB RAM   
  MSI U135DX Netbook, automatic booting from USB
  Intel N10 integrated graphics
  Internal 5400 RPM disk and USB flash drives

 #####################################################################


To Start

Performance Results

Below are results from the Core 2 Duo PC, identified above. The details and results are also saved in file bmpSpeed.txt. The first three columns of results show typical behaviour, given sufficient RAM, where the test time increases in line with image size, in this case the disk drive (eSATA) writing and reading at around 100 MB/second. Scrolling is at a constant speed but display time is less using images smaller than the display area. The time for full screen images, of course, depends on the monitor pixel dimensions.

Rotation test time is not necessarily linear at the top end, maybe similar to using Windows, when blitting large images appears to change to copying pixels rather than block transfers. The memory demands are the highest for rotating. At 512 MB, there will be two images of that size and one of 256 MB. It was intended to provide facilities to use larger images but SDL_CreateRGBSurface failed when trying to create one of 24 bits at 18432 x 18432 pixels or around 1 GB.


 #####################################################################

   Image Editing Speeds 64 Bit Version 1, Sat Aug  6 09:45:47 2011

   Input Enlarge    Save    Load  Scroll  Scroll  Rotate  Max MB
   Image Display         Display  Repeat Overall  90 deg  Memory
  Mbytes    Secs    Secs    Secs   msecs  MB/Sec    Secs    Used

     0.5    0.02    0.01    0.01    0.83  601.15    0.01   440.2
     1.0    0.02    0.05    0.02    1.63  612.30    0.02   441.9
     2.0    0.02    0.02    0.03    3.31  634.52    0.02   445.4
     4.0    0.03    0.04    0.06    5.66  625.44    0.03   451.6
     8.0    0.05    0.08    0.11    6.73  584.70    0.05   464.7
    16.0    0.09    0.16    0.20    6.77  580.53    0.08   489.5
    32.0    0.16    0.29    0.31    6.70  587.05    0.16   541.1
    64.0    0.29    0.59    0.71    6.94  566.85    0.32   672.4
   128.0    0.59    1.32    1.22    6.64  592.54    0.65   785.3
   256.0    1.14    2.35    2.60    6.63  593.46    3.51  1129.9
   512.0    2.27    4.90    4.73    6.65  591.47    3.91  1822.9

                   End at Sat Aug  6 09:46:58 2011

To Start


Drive Details

Details of disks or other drives used are saved in files hd1.txt and hd2.txt and it seems that different versions of Linux might not provide the same detail, so the data is provided for manual interpretation. Commands used via g = system(acmd); are sprintf(acmd, "df /%s >> hd1.txt", filePath); and sprintf(acmd, "ls -l /dev/disk/by-id >> hd2.txt");.

Following are example results, the first Ubuntu one using Seagate disk drive ST3320613AS (sdb) and the second, appropriate entries for a USB Flash Drive. The Fedora details are also for a USB Stick (name-vg_fed64) but are somewhat different format.

 

Ubuntu

Sat Aug 6 09:45:47 BST 2011 - from hd1.txt Filesystem 1K-blocks Used Available Use% Mounted on /dev/sdb1 11534708 3789268 7159504 35% / Sat Aug 6 09:45:47 BST 2011 - from hd2.txt lrwxrwxrwx 1 root root 9 2011-08-06 09:42 ata-ST3320613AS -> ../../sdb lrwxrwxrwx 1 root root 10 2011-08-06 09:42 ata-ST3320613AS-part1 -> ../../sdb1 to lrwxrwxrwx 1 root root 10 2011-08-06 09:42 ata-ST3320613AS-part6 -> ./../sdb6 lrwxrwxrwx 1 root root 9 2011-08-06 09:42 ata-ST3400633AS -> ../../sda ############################################################################### Filesystem 1K-blocks Used Available Use% Mounted on /dev/sdb2 6394020 3759060 2310156 62% / lrwxrwxrwx 1 root root 9 2011-08-01 23:22 usb-_Patriot_Memory-> ../../sdb ###############################################################################

Fedora

Sat Aug 6 17:36:49 BST 2011 Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_fed64-lv_root 9031048 2569680 6369644 29% / Sat Aug 6 17:36:49 BST 2011 lrwxrwxrwx. 1 root root 9 Aug 6 17:23 ata-Hitachi_HTS542516K9SA00-> ../../sda lrwxrwxrwx. 1 root root 10 Aug 6 17:23 dm-name-vg_fed64-lv_root -> ../../dm-0

To Start


Parameters and Paging

A run time parameter (s, S or Sizes) is available to control maximum image size used. A low value, like Sizes 8 for up to 64 MB, might be used for a quick test or, in some cases, a large value to demonstrate paging. Maximum is Sizes 11 for 512 MB, where memory demands will be around 1800 MB or more, depending on what other applications are running. The program reduces Sizes to 10 for RAM size less than 1.1 GB, 9 for less than 0.8 GB and 8 for under 0.5 GB.

The following show possible effects of up to 256 MB images on a netbook with 1 GB RAM or 16 MB less for on-board graphics. Initially, 393 MB is used and, without earlier reduction, the 640 MB for images leads to some paging out to disk (in this case and one that can run at up to 60 MB/second). The next results are for a repeat test immediately following the first. This starts with only 186 MB being used and tests with maximum demands run at full speed. Here, other applications, like Firefox, would be paged out and would take a noticeable time to become active. The third example shows severe performance degradation on increasing memory demands to around 1.5 GB.

The other parameter (F, f or FilePath), as shown below, can measure performance using a mounted external drive but this must have the initial small BMP files in the chosen directory. A Terminal window path, via /media, can be stepped through and copied to the ./SDL_bmpsp FilePath command. The example also shows typical appropriate details from files hd1.txt and hd2.txt.


 #####################################################################
 
   Default - ./SDL_bmpspd64

   Image Editing Speeds 64 Bit Version 1, Sat Aug  6 12:14:46 2011

   Input Enlarge    Save    Load  Scroll  Scroll  Rotate  Max MB
   Image Display         Display  Repeat Overall  90 deg  Memory
  Mbytes    Secs    Secs    Secs   msecs  MB/Sec    Secs    Used

     0.5    0.07    0.01    0.05    3.05  163.63    0.06   392.9
     1.0    0.06    0.05    0.07    8.35  119.68    0.10   394.6
     2.0    0.08    0.05    0.09    5.16  284.48    0.08   397.7
     4.0    0.10    0.10    0.12    5.92  311.10    0.13   404.4
     8.0    0.16    0.15    0.20    8.27  222.86    0.14   417.3
    16.0    0.23    0.31    0.34   11.62  158.64    0.38   442.4
    32.0    0.40    0.57    0.60    5.59  329.47    0.42   492.0
    64.0    0.75    1.12    1.17    7.45  247.51    1.86   617.6
   128.0    1.39    2.23    2.38   12.22  150.86    3.72   717.6
   256.0    6.54    8.45    9.11 2203.84    0.84    9.87   930.2

     0.5    0.05    0.01    0.05    3.22  154.99    0.02   185.8
     1.0    0.05    0.02    0.06    9.92  100.75    0.06   187.3
     2.0    0.08    0.06    0.08    9.96  147.46    0.05   190.6
     4.0    0.10    0.09    0.12    6.10  302.20    0.10   197.5
     8.0    0.14    0.16    0.17    8.40  219.43    0.14   210.5
    16.0    0.22    0.28    0.34    8.53  216.05    0.37   235.7
    32.0    0.38    0.56    0.63    9.39  196.34    0.43   287.0
    64.0    0.69    1.18    1.17   15.98  115.37    1.78   418.7
   128.0    1.38    2.44    2.42    5.55  332.30    3.69   531.2
   256.0    2.69    4.28    4.55    8.26  223.17    7.72   876.0

 
   ./SDL_bmpspd64 Sizes 11

    32.0    0.38    0.58    0.70    5.78  319.12    0.43   291.7
    64.0    0.70    1.30    1.18    8.89  207.28    1.79   423.5
   128.0    1.39    2.50    2.43   16.22  113.64    3.73   536.1
   256.0    2.68    4.44    4.56   11.24  163.93    7.62   880.5
   512.0   63.53   24.31   58.67   91.10   20.23  284.41   935.5

 #####################################################################

 ./SDL_bmpspd64 FilePath /media/7b2af249-14b2-42e0-a5cf-3f8f3734208a/home/roy/bmpspd

 Filesystem           1K-blocks      Used Available Use% 
 /dev/sdc2              6394020   3767576   2301640  63% 
 Mounted on             /media/7b2af249-14b2-42e0-a5cf-3f8f3734208a

 lrwxrwxrwx 1 root root 10 2011-08-03 12:13 usb-_Patriot_Memory-0:0->../../sdc2
 


To Start


CPU 32/64 Bit and Windows Comparison

Following are the measured running times of the enlarge and rotate tests for both 32-Bit and 64-Bit versions. Particularly the tests with larger images are dependent on CPU and RAM speeds. The first observation is that the 64-Bit speed is a little slower than using the 32-Bit compilation. The next one is that the Core 2 Duo, with a lower GHz, is faster than the Phenom on the rotate test.

Of the two Core 2 Duo systems, the speed benefit of the desktop CPU is often higher than the 1.3 times GHz CPU clock increase, probably due to even faster RAM for larger images and superior graphics performance on small ones. The 512 MB laptop rotate tests are also influenced by not quite enough RAM capacity. AMD Phenom and Athlon 64 comparisons have the same relative considerations as the Core 2 Duo systems. The latter also suffers from RAM capacity limitations at 256 MB. The Netbook Atom is generally slower than might be expected from a 1.66 GHz CPU, but response times are still sub-second for 32 MB images (to a 0.6 million pixel display for a small part of the time).

Performance of the larger images, using original Windows 32-Bit benchmark, are provided for comparison purposes, the Linux varieties showing superior performance. One main reason is that the programming procedures used for the Windows version are not as efficient, whereby memory outside the user’s space is used. This can increase demands for the rotate test to more than 2.3 GB with 512 MB images. The effects on the laptop with 2 GB RAM are not shown here, but see preceding test results for Graphics Data Transfer Speed.


  CPU   Phenom         Core 2 Duo     Core 2 Duo     Athlon 64      Atom
  MHz   3000           2400           1833           2210           1666
  Type  Desktop        Desktop        Laptop         Desktop        Netbook
  RAM   8 GB           4 GB           2 GB           1 GB           1 GB

  Input Enlarge Rotate Enlarge Rotate Enlarge Rotate Enlarge Rotate Enlarge Rotate
  Image Display  90deg Display  90deg Display  90deg Display  90deg Display  90deg
 Mbytes    Secs   Secs    Secs   Secs    Secs   Secs    Secs   Secs    Secs   Secs
  

32 Bit Version

0.5 0.03 0.02 0.02 0.01 0.07 0.02 0.03 0.02 0.13 0.08 1 0.03 0.03 0.02 0.02 0.03 0.04 0.03 0.03 0.06 0.07 2 0.03 0.04 0.03 0.02 0.05 0.05 0.04 0.04 0.07 0.10 4 0.05 0.05 0.04 0.05 0.06 0.07 0.05 0.07 0.11 0.15 8 0.07 0.10 0.07 0.07 0.09 0.11 0.09 0.10 0.14 0.19 16 0.09 0.15 0.11 0.11 0.14 0.15 0.12 0.25 0.22 0.38 32 0.14 0.26 0.16 0.19 0.23 0.26 0.22 0.32 0.38 0.46 64 0.25 0.47 0.29 0.35 0.41 0.96 0.39 1.47 0.68 1.77 128 0.47 0.99 0.55 0.70 0.79 0.97 0.76 3.27 1.28 3.54 256 0.88 3.33 1.06 3.49 1.51 4.13 1.48 6.09 2.50 7.09 512 1.75 4.78 2.04 3.42 2.94 9.10

64 Bit Version

0.5 0.01 0.02 0.01 0.01 0.03 0.02 0.02 0.01 0.05 0.03 1 0.03 0.02 0.01 0.02 0.02 0.03 0.03 0.03 0.05 0.04 2 0.03 0.04 0.02 0.02 0.03 0.04 0.03 0.03 0.08 0.07 4 0.05 0.06 0.03 0.03 0.05 0.05 0.05 0.06 0.10 0.09 8 0.07 0.09 0.05 0.05 0.08 0.07 0.08 0.10 0.14 0.14 16 0.09 0.15 0.09 0.08 0.13 0.11 0.13 0.27 0.22 0.37 32 0.15 0.26 0.15 0.15 0.22 0.21 0.22 0.31 0.38 0.43 64 0.26 0.49 0.29 0.31 0.41 0.93 0.41 1.49 0.69 1.79 128 0.52 1.16 0.60 0.69 0.82 0.91 0.84 3.42 1.38 3.73 256 0.97 6.64 1.19 3.91 1.59 4.03 1.70 9.39 2.69 7.62 512 1.90 6.82 2.38 5.07 3.17 11.36

Windows 32 Bit Version

Win7 64 Bit Vista 64 Bit Vista 32 Bit WinXP 64 Bit WinXP 32 Bit 32 0.27 0.42 0.25 0.47 0.49 0.76 0.29 0.65 0.90 1.15 64 0.46 0.79 0.44 0.90 0.77 1.86 0.56 1.93 1.26 2.73 128 0.77 1.73 0.78 1.73 1.28 2.46 1.01 20.27 1.95 5.80 256 1.36 4.38 1.48 4.52 2.41 6.53 89.59 244.37 3.40 11.61 512 2.52 8.65 2.80 8.15 8.38 15.15


To Start


Linux Version Comparison

The Enlarge, Rotate and Scroll results below are mainly on the PC with the Phenom CPU and GeForce GTS 250 graphics at a monitor resolution of 1680 x 1050. The exception is one set using on-board ATI Radeon HD 4200 graphics, but with the same CPU and monitor settings. Linux versions used are 32-Bit and 64-Bit Ubuntu 10.10 with GNOME 2, 64-Bit Ubuntu 11.04 with Unity on two different graphics arrangements, 64-Bit Fedora 14 with GNOME 2 and 64-Bit OpenSuse 11.4 with KDE.

Running time for Enlarge and Rotate tests is similar on all 64 bit versions but somewhat faster at 32 bits. Four of the systems are shown to have the same order of running times for Scroll tests, the exceptions being Ubuntu 11.04 using the slower ATI graphics system and the fastest via OpenSuse/KDE. Further difference are identified in the next section.


   Linux     Ubuntu 10.10            Ubuntu 11.04            Ubuntu 11.04 ATI
  Desktop    GNOME 2                 Unity                   Unity

   Input   Enlarge  Rotate Scroll  Enlarge  Rotate Scroll  Enlarge  Rotate Scroll
   Image   Display  90deg  Repeat  Display  90deg  Repeat  Display  90deg  Repeat
   Mbytes    Secs    Secs   msecs    Secs    Secs   msecs    Secs    Secs   msecs

      0.5    0.01    0.02     1.2    0.02    0.01     1.3    0.04    0.01     1.6
        1    0.03    0.02     2.2    0.02    0.02     2.6    0.03    0.02     3.0
        2    0.03    0.04     4.1    0.03    0.04     4.6    0.04    0.04     5.5
        4    0.05    0.06     6.6    0.05    0.06     7.8    0.05    0.06     7.6
        8    0.07    0.09     9.3    0.06    0.10     9.1    0.07    0.10    12.8
       16    0.09    0.15     9.7    0.10    0.15     9.6    0.09    0.15    12.6
       32    0.15    0.26     9.7    0.16    0.27     9.7    0.16    0.27    13.3
       64    0.26    0.49     9.7    0.27    0.51     9.7    0.27    0.52    13.3
      128    0.52    1.16     9.7    0.53    1.17     9.7    0.54    1.16    12.6
      256    0.97    6.64     9.7    1.01    6.73     9.2    1.03    6.67    13.3
      512    1.90    6.82     9.7    1.99    6.89    11.3    1.99    6.86    13.6
 
   Linux     Ubuntu 10.10 32 Bit     Fedora 14               OpenSuse 11.4
  Desktop    GNOME 2                 GNOME 2                 KDE

      0.5    0.03    0.02     1.3    0.04    0.02     0.7    0.01    0.01     0.6
        1    0.03    0.03     2.4    0.03    0.03     2.3    0.01    0.01     1.1
        2    0.03    0.04     4.5    0.04    0.03     4.3    0.03    0.01     2.1
        4    0.05    0.05     7.2    0.05    0.06     6.9    0.03    0.04     3.7
        8    0.07    0.10     9.0    0.06    0.10     9.3    0.05    0.07     4.9
       16    0.09    0.15     9.8    0.09    0.16     9.6    0.08    0.13     6.1
       32    0.14    0.26     9.8    0.14    0.26     9.6    0.14    0.25     6.1
       64    0.25    0.47     9.4    0.25    0.50     9.6    0.25    0.49     6.1
      128    0.47    0.99     9.7    0.51    1.19     9.6    0.51    1.18     6.1
      256    0.88    3.33     9.5    0.99    6.67     9.7    0.97    6.73     6.1
      512    1.75    4.78    10.5    1.95    6.87     9.3    1.93    6.85     6.1
 


To Start


Graphics Data Transfer Speed Comparison

This section shows scrolling performance for larger images, using four different distros, each on five different systems. Monitor size on these varied from 0.61 million to 1.76 million pixels, so speed in MB/second is shown, besides image transfer time in milliseconds. The scrolling time using each hardware system is rated as fastest or slowest (F or S). Relative performance ratios show that performance can vary by between 20% and 120%, depending on the Linux variety, but each distro can be fastest on at least one PC and slowest on others.

The Phenom has the fastest hardware, but not necessarily the fastest speed in MB/second. Similarly, the Netbook, with at least the Atom being slowest CPU, can have faster data transfer speeds than what might be considered to be superior hardware. The Netbook can also have the fastest scrolling time as the display is only 600 pixels deep.

As indicated earlier, 10 milliseconds to paint the screen equates to 100 Frames Per Second. Considering using the scrollbar, 1000 pixel lines on the screen and the 8 MB file at 1632 x 1632 pixels, a full image scroll would be 632 lines, or take more than 6 seconds at the measured speed. Using an image processing application and that size bitmap, the scroll bar can be moved from top to bottom in less than a second, and give the impression of smooth scrolling. At the benchmarked speed (scroll depth 1 line), manual scrolling is likely to produce a broken and jerky picture unless the application uses a large multiple line scrolling distance.

Scrolling time for the 32-Bit Windows BMPSpeed benchmark are also provided. Except for the Netbook, these are mainly much faster than the Linux versions, where the images are cached in video RAM and data transfer from main memory is not used. As indicated in CPU 32/64 Bit Comparison, performance of the enlarge and rotate tests are faster via Linux versions, with the Windows tests using much more RAM space. The slow speed of the last laptop test is affected by this, where paging to disk is involved.


   Linux   Ubuntu 10.10    Ubuntu 11.04    Fedora 14       OpenSuse 11.4   Windows
  Desktop  GNOME 2         Unity           GNOME 2         KDE

   Input   Scroll  Scroll  Scroll  Scroll  Scroll  Scroll  Scroll  Scroll   Scroll
   Image   Repeat Overall  Repeat Overall  Repeat Overall  Repeat Overall   Repeat
   Mbytes   msecs  MB/Sec   msecs  MB/Sec   msecs  MB/Sec   msecs  MB/Sec    msecs

         Phenom GeForce GTS 250 1680 x 1050 - 1.76M pixels
               S               S               S               F
       32     9.7     548     9.7     548     9.6     550     6.1     874      2.7
       64     9.7     545     9.7     548     9.6     549     6.1     875      2.7
      128     9.7     544     9.7     546     9.6     550     6.1     869      2.7
      256     9.7     544     9.2     573     9.7     544     6.1     868      2.7
      512     9.7     544    11.3     467     9.3     571     6.1     866      2.7

         Core 2 Duo GeForce 8600 GT 1280 x 1024 - 1.31M pixels
               S               S               F               F
       32     6.7     587     6.7     586     5.6     700     5.5     712      2.9
       64     6.9     567     6.8     576     5.6     698     5.5     718      2.9
      128     6.6     593     7.6     516     5.6     698     5.5     718      2.9
      256     6.6     593     7.5     522     5.7     696     5.5     716      2.9
      512     6.7     591     6.8     581     5.7     689     5.5     717      3.1

         Laptop GeForce 8400M GS 1440 x 900 - 1.30M pixels
               F               F                               S
       32     9.6     403    11.9     327    12.2     319    20.1     193      4.9
       64    11.8     329    11.9     327    12.2     320    21.6     180      5.2
      128    11.4     341    17.8     219    12.2     320    19.8     196      4.9
      256    13.7     283    14.7     265    12.2     319    21.6     180      5.6
      512    12.5     311    21.3     182    12.2     318    21.6     180    171.7

         Netbook Intel N10 graphics 1024 x 600 - 0.61M pixels
                               S               F                
       32     6.4     290    10.5     175     4.7     393     5.2     358      1.8
       64     6.5     283     9.1     202     4.7     391     5.2     358     17.6
      128     6.6     281    10.7     172     4.7     393     5.2     355     23.1
      256     6.4     289    10.4     177     4.8     387     5.2     355     31.2

         Athlon 64 Radeon X800 XL 1360 x 768 - 1.04M pixels
               F               S                                
       32     7.5     420    12.5     251     9.4     333    10.0     313      0.8
       64     7.5     420    12.5     251     9.4     333    10.2     308      3.4
      128     7.5     419    12.5     252     9.5     331    10.1     311      3.4
      256     7.6     413    12.6     249     9.6     326   129.7      24      3.4
 


To Start


Memory Used Comparison

The following tables show the maximum memory used in each test (for all applications and Linux), using the different Linux versions on five PCs. OpenSuse 11.4 appears to have the highest demands, followed by Ubuntu 11.04, but this could be affected by applications loaded on booting and this has not been examined. Similarly, memory used for 32-Bit Ubuntu 10.10 is generally less than that for the 64-Bit version.

For the first three systems, with the image size increasing from 128 MB to 256 MB, memory used increases by more than 300 MB. On the other two, with 1 GB RAM, extra memory used is much less, cache space being released or other tasks swapped out.

  

Maximum MB Used

Image Ubu10 Ubu10 Ubu11 Fed14 Osu11 Ubu10 Ubu10 Ubu11 Fed14 Osu11 Mbytes 32 bit 32 bit Phenom GeForce 8 GB Core 2 Duo 4 GB 0.5 255 374 542 468 547 249 279 505 375 452 1 257 375 544 469 547 251 281 506 376 454 2 259 378 547 472 552 253 284 510 379 458 4 265 384 554 478 558 258 291 516 386 464 8 275 397 566 490 571 270 303 529 399 477 16 297 422 591 516 596 291 328 554 424 502 32 340 473 642 567 642 334 380 605 475 554 64 427 606 775 699 771 421 511 737 607 685 128 599 718 888 811 909 594 624 849 720 793 256 944 1063 1232 1156 1224 938 968 1194 1065 1157 512 1636 1757 1927 1850 1917 1630 1661 1888 1776 1832 Laptop Core 2 Duo 2 GB Netbook Atom 1 GB 0.5 234 228 371 314 391 226 393 276 254 373 1 236 230 372 316 393 228 395 277 256 375 2 239 233 376 320 396 230 398 280 259 378 4 244 239 382 326 402 238 404 287 265 385 8 254 252 399 338 415 246 417 299 278 397 16 276 277 420 364 441 268 442 325 304 418 32 319 329 472 414 492 311 492 376 354 469 64 405 460 604 547 623 397 618 508 486 600 128 578 573 717 659 737 570 718 620 598 729 256 923 918 1061 1004 1081 907 930 924 923 886 512 1614 1612 1752 1697 1773 Athlon 64 1 GB 0.5 210 224 310 270 432 1 212 226 314 272 434 2 214 229 319 275 439 4 219 235 329 282 447 8 230 248 347 294 456 16 251 274 384 320 481 32 295 324 458 371 531 64 381 456 604 504 660 128 554 569 898 616 767 256 896 907 974 939 949


To Start


Disk/Drive Speed Comparison

The following tables show writing and reading time, measured for the USB flash drives and disks used for the tests, and this was quite consistent when connected to different PCs and Linux versions (when appropriate). Average speed of the larger images is also shown, in MB/second.

All the USB sticks were purchased in late 2010 or 2011. Most have similar writing and reading speeds, where saving time is much slower than that for loading images. The exception is the Patriot Xporter XT Rage that uses quad channels for fast writing at claimed speeds of up to 25 MB/second.

Note that speed over USB 2.0 is unlikely to exceed 33 MB/second, as demonstrated using the USB disk, with the same drive being around twice as fast using an eSATA connection. The Netbook SATA disk is admirably fast for such an inexpensive unit. Best performance was from the 7200 RPM eSATA disk, at greater than 100 MB/second, and that is two years old.


           --------------------- Seconds Data Transfer Time ----------------------

 Mbytes    Save   Load    Save   Load    Save   Load    Save   Load    Save   Load
   
           Attache        Micro Cruzer   Cruzer Blade   Micro Cruzer   Patriot Rage
           4 GB           4 GB           4 GB           16 GB          8 GB

    0.5    0.61   0.04    1.11   0.04    1.02   0.03    0.62   1.06    0.12   0.03
      1    0.38   0.08    0.59   0.07    1.08   0.06    1.02   0.05    0.31   0.06
      2    0.55   0.13    0.71   0.13    1.05   0.11    1.03   0.10    0.99   0.11
      4    1.94   0.25    2.49   0.25    4.19   0.19    0.96   0.19    0.48   0.20
      8    3.89   0.46    2.37   0.49    4.79   0.36    1.74   0.39    1.09   0.35
     16    8.66   1.10    4.01   0.94    6.55   0.73    4.17   0.68    1.33   0.62
     32   12.63   1.64    8.62   1.86    8.91   1.52    8.87   1.35    2.72   1.20
     64   18.94   3.17   16.22   3.74   17.75   3.10   20.21   2.73    5.45   2.35
    128   32.13   6.30   33.11   7.41   35.64   6.30   33.72   5.39   17.71   4.71
    256   78.18  12.45   70.90  19.59   64.78  12.59   64.24  10.76   24.95   9.25
    512  170.10  34.51  139.88  34.26  130.53  26.02  128.26  21.54   47.28  19.94

 MB/sec     3.4   20.4     3.8   15.6     3.8   20.2     3.7   23.7    10.0   26.9


           eSATA Disk     eSATA Disk*    Netbook Disk   USB Disk*

    0.5    0.01   0.01    0.04   0.02    0.01   0.12    0.04   0.05
      1    0.01   0.02    0.02   0.02    0.03   0.06    0.09   0.05
      2    0.02   0.03    0.02   0.08    0.06   0.09    0.18   0.09
      4    0.04   0.06    0.05   0.12    0.10   0.12    0.21   0.16
      8    0.08   0.12    0.11   0.21    0.16   0.17    0.35   0.30
     16    0.16   0.17    0.24   0.36    0.34   0.33    0.67   0.54
     32    0.32   0.38    0.48   0.60    0.55   0.72    1.22   0.99
     64    0.66   0.64    1.00   1.05    1.02   1.16    2.38   2.06
    128    1.23   1.22    2.14   2.06    2.05   2.99    4.66   3.83
    256    2.35   2.40    4.17   4.08    4.11   4.36    9.27   7.69
    512    4.70   4.86    8.31   8.17                  18.64  15.08

 MB/sec   104.7  104.2    61.7   62.1    62.5   52.2    27.4   32.9

  eSATA Disk     Seagate ST3320613AS, 7200 RPM           - 2009
  Disk*          Seagate FreeAgent GoFlex Ultra-portable - 2011
                 5400 RPM, eSATA and USB attachments
  Netbook Disk   WD 1600BEVT, 5400 RPM                   - 2011
 


To Start


To Start


Ubuntu 14.04, Core i7

These are the fastest results available in 2014. The system comprises a Core i7-4820K 3.7 GHz, normally running at the Turbo Boost speed of 3.9 GHz, 4 Channel 32 GB 800 MHz DDR3 RAM, GeForce GTX 650, a 1 TB, 5400 RPM Seagate Expansion SRD00F1 USB 3 disk drive and Ubuntu 14.04.

Processor speed dependent tests are much faster than earlier results shown, particularly for rotating, probably due to the high speed RAM. Data transfer speeds, via USB 3.0, average around 100 MB/second. Scrolling, to the 1920 x 1080 pixels display, is the fastest so far, at about 1 GB/second. Memory occupancy is much higher than earlier systems, at the start, but this is not an issue with 32 GB RAM being available.

Below are BMPSpeed results via Windows 8.1, with faster SATA disk drive and scrolling (BitBlt caching?) but slower on Enlarge and Rotate tests.


 #####################################################################

  Assembler CPUID and RDTSC       
  CPU GenuineIntel, Features Code BFEBFBFF, Model Code 000306E4 
         Intel(R) Core(TM) i7-4820K CPU @ 3.70GHz 
  Measured - Minimum 3711 MHz, Maximum 3711 MHz 
  Linux Functions 
  get_nprocs() - CPUs 8, Configured CPUs 8 
  get_phys_pages() and size - RAM Size 31.36 GB, Page Size 4096 Bytes 
  uname() - Linux, roy-i7UB14, 3.13.0-24-generic 
  #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014, x86_64 

  Memory stats from /proc/meminfo

     MemTotal:  32114.1 MB   A
      MemFree:  30952.5 MB   B
      Buffers:     40.2 MB   C
       Cached:    376.1 MB   D

  Memory Used:    745.4 MB = A - B - C - D

  Current Directory Path (getcwd) and drive space (statvfs): 
  /home/roy/benchmarks/Old/bmpspd/bin64
  Total MB  446040, Free MB  435462, Used MB   10577
  See files hd1.txt and hd2.txt for details of drive used

  SDL_GetVideoInfo
  hw_available flag is 0 - cannot create hardware surfaces
  Display size 1920 x 1080 pixels at 32 bits

  SDL_VideoDriverName = x11

  Graphics (command - lspci | grep -i vga > vga.txt)
  VGA compatible controller: NVIDIA Corporation GK107 [GeForce GTX 650] (rev a1)


 #####################################################################

   Image Editing Speeds 64 Bit Version 1, Sat Dec 27 09:58:41 2014

   Input Enlarge    Save    Load  Scroll  Scroll  Rotate  Max MB
   Image Display         Display  Repeat Overall  90 deg  Memory
  Mbytes    Secs    Secs    Secs   msecs  MB/Sec    Secs    Used

     0.5    0.01    0.01    0.02    0.65  774.44    0.00   751.4
     1.0    0.01    0.11    0.01    1.04  957.30    0.01   752.2
     2.0    0.02    0.01    0.03    1.87 1121.19    0.01   756.3
     4.0    0.02    0.03    0.03    3.37 1108.22    0.02   763.0
     8.0    0.03    0.05    0.15    4.72 1119.93    0.02   774.7
    16.0    0.05    0.09    0.26    5.61 1108.62    0.04   800.4
    32.0    0.06    0.31    0.51    5.02 1239.99    0.05   853.0
    64.0    0.11    0.56    0.62    5.52 1126.91    0.12   983.3
   128.0    0.20    1.32    1.28    5.87 1059.86    0.23  1095.7
   256.0    0.38    2.78    2.67    5.86 1062.25    0.58  1443.1
   512.0    0.74    5.42    5.07    6.35  979.01    0.83  2135.9

   Windows 8.1 BMPSpeed

   256.0    0.63    1.82    2.04     1.4  5897.4    1.46
   512.0    1.13    3.53    3.85     1.4  5878.2    2.66

 


To Start


Roy Longbottom at Linkedin   Roy Longbottom December 2014

The Internet Home for my PC Benchmarks is via the link
Roy Longbottom's PC Benchmark Collection