NOTICE! This is a static HTML version of a legacy ImageJ Trac ticket.

The ImageJ project now uses GitHub Issues for issue tracking.

Please file all new issues there.

Ticket #1176 (closed task: fixed)

Opened 2012-05-14T14:28:42-05:00

Last modified 2014-05-18T17:41:08-05:00

OPS speed baseline

Reported by: bdezonia Owned by: bdezonia
Priority: major Milestone: imagej2-b11-docs
Component: ImgLib2 OPS Version:
Severity: serious Keywords:
Cc: Blocked By:
Blocking: #1343

Description (last modified by bdezonia)

Here are some statistics of a speed test I ran with OPS shortly before beta 1. Check later as code changes how these results hold up.

Take a 1024 x 1024 image 8 bit image. Run Process > Math > Set and choose a value like 58. Time the assigner.assign() call.

On Barry's mac:

Slices, seconds

1, 0.112
5, 0.222
20, 0.808
35, 1.506
50, 2.013
65, 2.520

Change History

comment:1 Changed 2012-05-14T14:30:52-05:00 by bdezonia

  • Description modified

Note that hacking the number of threads allocated to 1 in ImageAssignment you can see that the multithreaded algorithm is 33% faster when it is using 2 threads instead of one.

comment:2 Changed 2012-05-14T15:15:32-05:00 by bdezonia

  • Description modified

comment:3 Changed 2012-07-17T15:24:40-05:00 by bdezonia

  • Milestone changed from imagej-2.0.0-beta4 to imagej-2.0.0

comment:4 Changed 2012-07-17T15:36:10-05:00 by bdezonia

  • Milestone changed from imagej-2.0.0 to imagej-2.0.0-beta4

comment:5 Changed 2012-07-17T15:37:06-05:00 by bdezonia

  • Blocking 1343 added

comment:6 Changed 2012-09-06T16:58:20-05:00 by bdezonia

  • Milestone changed from imagej-2.0.0-beta4 to imagej-2.0.0-beta5

comment:7 Changed 2012-10-15T12:32:13-05:00 by bdezonia

Retested very shortly before beta 5. Results are virtually unchanged. This is good news as some changes were made to OPS that I expected would slow things down.

comment:8 Changed 2013-01-22T15:18:05-06:00 by bdezonia

  • Milestone changed from imagej2-b7-ndim-data to imagej2-unscheduled

comment:9 Changed 2013-04-15T10:25:49-05:00 by curtis

  • Milestone changed from imagej2-unscheduled to imagej2-b11-docs

comment:10 Changed 2014-05-18T17:41:08-05:00 by curtis

  • Status changed from new to closed
  • Resolution set to fixed

The new ImageJ OPS project, intended to fully replace ImgLib2 OPS and SciJava OPS, has already  done a lot of benchmarking. The flexible approach of ImageJ OPS allows ops to be multithreaded in very configurable and extensible ways. So I'd say we are really good to go from a performance perspective.