Development and performance evaluation of fast combinatorial unranking implementations

András Majdán, Gábor Rétvári, János Tapolcai

Research output: Contribution to journalArticle


Compressed bitmaps have been long used in computer science and today it seems they conquer more and more fields of networking. The goal of this paper is to provide fast combinatorial unranking implementations for use in bitmap data compression. Within this context, unranking refers to the operation of obtaining a bit vector given its rank in a particular enumeration of all bit vectors of the same size with respect to a given order. Easily, the simplest way to accomplish this task is to use a lookup table. However, for large block sizes such a table may not fit into the memory. Efficient combinatorial unranking algorithms, which eliminate large lookup tables, are therefore essential in practice. Taking the textbook combinatorial unranking schemes, in this paper we develop very fast combinatorial unranking implementations and we introduce a comprehensive performance evaluation and profiling toolkit to measure their efficiency. Our benchmarks show that our optimized implementations improve the performance of the naive combinatorial unranking implementations by 39%, almost attaining the performance of simple lookup tables.

Original languageEnglish
Pages (from-to)97-108
Number of pages12
JournalLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Publication statusPublished - Jan 1 2014

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)

Fingerprint Dive into the research topics of 'Development and performance evaluation of fast combinatorial unranking implementations'. Together they form a unique fingerprint.

  • Cite this