QIS Library Logo

QisLib_MT is the new QISLIB

Effective September 15, 2016 we've replaced QISLIB with QisLib_MT - a multi-threaded implementation of QisLib that takes advantage of multiple CPUs. We will continue selling and support bug fixes to QISLIB for our existing customers but will not sell QISLIB into new design slots.

Please go to this page for all info related to QisLib_MT.


The Qckvu Image Server Library [QISLib] is a powerful GDSII/OASIS database server that enables a client calling program to display and manipulate GDSII/OASIS data using a simple set of calls. As GDSII and OASIS files grow larger, many software developers are discovering that their own GDSII routines are no longer able to deal effectively with these large files -- they face the need to completely rewrite GDSII readers to handle files of 50,100 and even 200 GB.

QISLib Flow - callling application uses QISLib to open/display and manipulate GDSII and OASIS databases.

QISLib can be used as a "toolkit" and eliminates the need to deal with the problems associated with opening and randomly accessing such large files. The OEM can focus on his core expertise and leave the heavy data manipulation to QISLib.

Many Applications

QisLib has been used for many different EDA applications:

    Viewing - integrated into software used to view the CAD database overlaid with a camera image for controlling a focused ion beam machine.

    High Resolution Rasterizer - used to extract thousands of high resolution bitmapped windows as input to software that performs pattern recognition to identify "hotspots" in mask inspection. [We recommend using Artwork's NexGen RIP for this purpose as it has a much faster rasterizer.]

    Wafer Inspection Recipe Generation - used with software designed to recognize and isolate memory blocks on a chip for wafer inspection recipe generation. [Artwork offers a number of routines for identifying logic vs memory and computing memory cell pitch for recipe generation.]

Boolean Library Integration - QisBool

Many applications using QISLIB also require that Boolean operations be done on the extracted data. For example, one might wish to extract many 10 x 10 um windows from a large layout and compute the metal coverage within each window to create a density map. Because Boolean operations generally take longer than data extraction, it would be most useful to have a separate but integrated Boolean library with multiple instances -- each processing a different window.

QISLib integrated with QisBool


Windows 7/10 64 bit

Linux 64 bit (RH4 and up)


Application Notes

Controlling Memory Usage for Large Files

This app note describes memory use when opening large GDSII files and the various options that can be used for controlling memory footprint.

  Sample Code

A simple example of opening a file, setting the structure, selecting a layer and a window, extracting the polygons and then clipping and unionizing them.

TiffExtract: Extracting Windows to TIFF

Sample code that shows how to use QISLIB to extract a small user specified window to a monochrome TIFF bitmap.

  Using Memory Maps to Speed Loading

Describes how to create, load and use memory maps to speed up loading of large GDSII files.

Sample Code C#

Some of our clients are using C# to write their apps. An example of calling QISLIB from a C# application.


Documentation Download Rev History Price