QisMRaster Extension Library
This rasterization library extension to QisMLib is intended to raster data windows containing lots of polygons.
There seems to be two different use cases when rasterizing GDSII/OASIS layout data - case a) where a very large number of small windows (i.e. the internal polygon count is relatively small) are needed; case b) when a few very large swaths are needed where each "swath" may contain millions of polygons.
It turns out the allocation of resources between data extraction and rasterization differs considerably for optimal performance. That's why we have two separate extension libraries that can do rasterization - ClipExtract and QisMRaster.
QisMRaster vs QiSMClipExtract
Both use QisMLib as their data source
Both use the same core rasterization code
Both are extensions to the QisMLib system
QisMClipExtract is optimized for rasterizing lots of tiny windows (< 100,000 polygons) with emphasis on collecting polygons from windows in parallel.
QisMRaster is optimized for rasterizing very large windows with emphasis on the rasterization computations rather then data collection computations.
We also developed a separate rasterzizer a couple of years ago called NexGen Raster. Here are some of the differences and similarities.
QisMRaster vs NextGenRaster
Both are suitable for rasterizing large windows using multiple threads and pattern recognition (identical cell references)
QisMRaster uses QisMLib as the data source while NextGenRaster uses QisLib (single-threaded). QisMRaster can extract multiple windows in parallel (using multiple instances of the rasterizer) while NextGenRaster can only rasterize 1 window at a time.
QisMRaster can rasterize data created by boolean operations between layers (derived layers). To do this, the user simply specifies a layers synthesis spec instead of a set of layers and everything else is accomplished under the hood (using the QisMLayerSynth extension)
QisMRaster can also rasterize an arbitrary set of polygons supplied by the client application (or perhaps QisMBool) instead of those obtained from the file (via explosion)
In tests using the same data, QisMRaster seems to performs a little better NextGenRaster (for GDSII files loaded to memory, because of improved rasterizer internals)
Linux - RHEL5 64 or later
Windows - Win 7/10
QisMRaster Header File 05/26/17
qismlib-system.pdf 05/26/17 278KB