25 lines
1.2 KiB
C++
25 lines
1.2 KiB
C++
// Generated by proto-metal/igneum-bench --export-pack for seed "igneum-genesis". Do not edit by hand.
|
|
// Program metadata for host.cu plus the launch wrappers defined in kernel.cu.
|
|
#pragma once
|
|
#include <cuda_runtime.h>
|
|
#include <cstdint>
|
|
|
|
#define IGNEUM_SEED_STRING "igneum-genesis"
|
|
#define IGNEUM_DAY_STRING "2026-10-03"
|
|
#define IGNEUM_DAY0 0x3067619fu
|
|
#define IGNEUM_DAY1 0x3c269176u
|
|
#define IGNEUM_DATASET_LOG2 28
|
|
#define IGNEUM_MASK 0x0fffffffu
|
|
#define IGNEUM_LANES 32
|
|
#define IGNEUM_ITERATIONS 8
|
|
#define IGNEUM_INSTR_COUNT 64
|
|
#define IGNEUM_LOADS_PER_HASH 104
|
|
#define IGNEUM_OP_MIX "load=13 xor=13 sub=7 shfl=6 add=5 mulhi=5 mad=4 rotr=4 mul=3 rotl=3 or=1"
|
|
|
|
#define IGNEUM_SEEDW_INIT { 0x67a9a7beu, 0x1a155b25u, 0xfddfb732u, 0x4b5af2e8u, 0xc55caf33u, 0xa27c13b7u, 0x06628a48u, 0x03852469u }
|
|
|
|
// Defined in kernel.cu. Both launch on the default stream and return cudaGetLastError().
|
|
cudaError_t igneum_launch_fill(uint32_t* ds, uint32_t nWords, uint32_t d0, uint32_t d1);
|
|
cudaError_t igneum_launch_hash(const uint32_t* ds, uint64_t* out, uint32_t baseNonce, uint32_t mask,
|
|
uint32_t nonces, uint32_t blockWarps);
|
|
cudaError_t igneum_hash_info(int* numRegs, int* blocksPerSM, uint32_t blockWarps);
|