chemfp report command-line options

The report subcommand is primarily meant to diagnose how chemfp was compiled and its run-time configuration.

The following comes from chemfp report --help:

usage: chemfp report [-h]

Report chemfp similarity search implementation details

options:
  -h, --help  show this help message and exit

Example output:

== Configuration report for chemfp/4.0 ==
Python version: 3.10.2 (main, Feb 15 2022, 14:27:35) [Clang 12.0.5 (clang-1205.0.22.9)]
Platform: macOS-11.3.1-x86_64-i386-64bit
Chemfp compiled with: gcc 11.1.0 (with OpenMP, fully specialized)
Number of available threads: 4
Available method families: builtin popcnt avx2
Available methods: builtin_1_1 builtin_8 builtin_8_8 builtin_16 builtin_24
  builtin_32 builtin_32_8 builtin_40 builtin_48 builtin_56 builtin_64
  builtin_72 builtin_80 builtin_88 builtin_96 builtin_104 builtin_112
  builtin_120 builtin_128 builtin_128_8 builtin_128_32 builtin_128_128
  popcnt_8 popcnt_8_8 popcnt_16 popcnt_24 popcnt_32 popcnt_32_8
  popcnt_40 popcnt_48 popcnt_56 popcnt_64   popcnt_72 popcnt_80
  popcnt_88 popcnt_96 popcnt_104 popcnt_112 popcnt_120 popcnt_128
  popcnt_128_8 popcnt_128_32   popcnt_128_128 avx2_128 avx2_128_128
  avx2_160 avx2_192 avx2_224 avx2_256
Size methods:
  size1_1: builtin_1_1
  size8_1: builtin_1_1
  size8_8: popcnt_8_8
  size8: popcnt_8
  size16: popcnt_16
  size24: popcnt_24
  size32: popcnt_32
  size40: popcnt_40
  size48: popcnt_48
  size56: popcnt_56
  size64: popcnt_64
  size72: popcnt_72
  size80: popcnt_80
  size88: popcnt_88
  size96: popcnt_96
  size104: popcnt_104
  size112: popcnt_112
  size120: popcnt_120
  size128: avx2_128
  size128_1: builtin_1_1
  size128_8: popcnt_128_8
  size128_32: popcnt_128_32
  size128_128: avx2_128_128
  size160: avx2_160
  size192: avx2_192
  size224: avx2_224
  size256: avx2_256
Option settings:
  report-popcount: 0
  report-intersect: 0
  report-algorithm: 0
  use-specialized-algorithms: 1