Author Archives: jimbelton

About jimbelton

I'm a software developer, and a writer of both fiction and non-fiction, and I blog about movies, books, and philosophy. My interest in religious philosophy and the search for the truth inspires much of my writing.

Avro C Diagnostics

I was experimenting with Avro C, a library from the Apache project used to encode/decode information whose Java implementation that is commonly used to enode data being stored in Kafka, a log based data distribution system. Avro C is fairly … Continue reading

Posted in Uncategorized | Leave a comment

Go is in the Top 10, According to Tiobe

Its July 2017, and since last July, there has been a huge shift in the top programming languages, according to the Tiobe index. Though the top 6 languages remain unchanged, all have declined. Visual Basic .NET traded places with Javascript … Continue reading

Posted in Uncategorized | Leave a comment

cmph Comparitive Graphs

I just enhanced cmph-bench/cmph-graph.py to allow graphing a single attribute across multiple minimal perfect hashing algorithms. The updated code is available in GitHub. For example, the following command generates a CSV of lookup times for four algorithms: ./cmph-graph.py -t chd … Continue reading

Posted in c programming, python programming | Tagged , , , | Leave a comment

Using a cmph as a Set

Given the extremely low overhead of the minimal perfect hashes generated by cmph (on the order of 1/2 a byte per key), I was fairly certain they would generate false positives. That is, if you searched for a key that … Continue reading

Posted in c programming | Tagged , , , , | Leave a comment

CMPH Benchmark Bar Chart

I added a little more code to the cmph-bench project in GitHub. It’s described in the previous post, cmph-bench – A Benchmark for Minimal Perfect Hashing in C. The bench mark program now randomizes the order of the keys before … Continue reading

Posted in c programming, python programming | Tagged , , | Leave a comment

cmph-bench – A Benchmark for Minimal Perfect Hashing in C

There is an open source software package on Sourceforge that includes implementations in C of several minimal perfect hashing algorithms. It has been uploaded to GitHub at https://github.com/zvelo/cmph. The code is licensed under your choice of LGPL (Lesser GNU Public … Continue reading

Posted in c programming | Tagged , , , , , , , | 1 Comment

Minimal Perfect Hashing

A perfect hash is a one-to-one map. A key is taken and hash (into an integer) and looked up in a single location in the map. If it is in the map, it will be found in that location. This … Continue reading

Posted in Uncategorized | Leave a comment