QUBO++ with ABS2 GPU QUBO Solver
Required Hardware and Software
A Linux-based operating system with a g++ or clang++ compiler is required. Additionally, standard libraries such as Boost and Intel oneTBB must be installed. Execution has been verified on the following platforms:
Ubuntu Linux
Windows WSL (with Intel and ARM CPUs)
macOS (with Intel and ARM CPUs)
ABS2: NVIDIA GPUs with sm_80 or sm_86 CUDA architecture.
Terms and Conditions
By using the ABS2 QUBO Solver C++ API, the user agrees to adhere to the following terms and conditions.
Only for non-commercial use: The software or service is restricted to non-commercial purposes, meaning it cannot be used for activities that generate revenue or profit. It is intended for personal, educational, or research use only.
Evaluation and research purposes: The software or service can be used for testing, evaluation, and research. These activities must be non-commercial in nature, and any results should not be utilized for profit.
With no warranties: The software or service is provided "as is" without any guarantees regarding its performance, quality, or suitability for specific purposes. Users assume all risks associated with its use.
Redistribution is strictly prohibited: The software or service cannot be shared, distributed, or copied for use by third parties. It is intended solely for the original user's use.
Commercial use requires prior consultation and approval: If you wish to use the software or service for commercial purposes, you must first consult with and obtain approval from the provider to ensure that the usage complies with their policies.
Contact Information: The designated contact information for inquiries, consultation, and communication is as follows: Hiroshima University (qubo@cs.hiroshima-u.ac.jp), NTT DATA Group Corporation (qcomputer@kits.nttdata.co.jp)
Downloads (QUBO++ Library with ABS2 GPU Solver)
The QUBO++ library, including the ABS2 GPU QUBO Solver, can be downloaded from the links below.
QUBO++ with no ABS2 binaries: qbpp_20250115.tar.gz
QUBO++ with ABS2 binaries for sm_80 GPUs : sm_80_20250115.tar.gz
QUBO++ with ABS2 binaries for sm_86 GPUs : sm_86_20250115.tar.gz
For more information about NVIDIA GPU architectures, refer to the CUDA architecture documentation.
Installation
Download the tar.gz archive and extract its contents.
The archive includes:
Documentation: HTML files containing comprehensive documentation. Detailed descriptions of QUBO++'s main classes and functions, which are essential for understanding the implementation, are intentionally excluded. These will only be provided to licensed companies.
Include files: Header files required to compile QUBO++ programs.
ABS2 Binaries: Shared libraries for running the ABS2 GPU QUBO solver.
Sample programs: Example QUBO++ programs for solving various combinatorial optimization problems, including the partitioning problem, knapsack problem, N-Queens problem, TSP, graph coloring problem, and factorization/multiplication problem.