Matchers

class tests.test.sass.matchers.test_add_int128.TestAddInt128MatcherView on GitHub

Bases: object

Tests for reprospect.test.sass.matchers.add_int128.AddInt128Matcher.

CODE_ADD_INT128: Final[str] = '__global__ void add_int128(__int128_t* __restrict__ const dst, const __int128_t* __restrict__ const src)\n{\n    const auto index = blockIdx.x * blockDim.x + threadIdx.x;\n    dst[index] += src[index];\n}\n'
EXPECTED_PTX: Final[Pattern[str]] = re.compile('\\\nadd\\.cc\\.s64 %rd\\d+, %rd\\d+, %rd\\d+;\naddc\\.cc\\.s64 %rd\\d+, %rd\\d+, %rd\\d+;\nst\\.global\\.v2\\.(u|b)64 \\[%rd\\d+\\], {%rd\\d+, %rd\\d+};\n')
test(request, parameters: Parameters, workdir: Path, cmake_file_api: FileAPI) NoneView on GitHub
test_IADD() NoneView on GitHub
test_IADD3() NoneView on GitHub
class tests.test.sass.matchers.test_add_int32.TestAddInt32MatcherView on GitHub

Bases: object

Tests for reprospect.test.sass.matchers.add_int32.AddInt32Matcher.

CODE: Final[str] = '__global__ void add({type}* __restrict__ const dst, const {type}* __restrict__ src)\n{{\n    const auto index = blockIdx.x * blockDim.x + threadIdx.x;\n    dst[index] += src[index];\n}}\n'
pytestmark = [Mark(name='parametrize', args=('parameters', (Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.VOLTA: 'VOLTA'>, compute_capability=ComputeCapability(major=7, minor=0))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.TURING: 'TURING'>, compute_capability=ComputeCapability(major=7, minor=5))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.AMPERE: 'AMPERE'>, compute_capability=ComputeCapability(major=8, minor=0))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.AMPERE: 'AMPERE'>, compute_capability=ComputeCapability(major=8, minor=6))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.ADA: 'ADA'>, compute_capability=ComputeCapability(major=8, minor=9))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.HOPPER: 'HOPPER'>, compute_capability=ComputeCapability(major=9, minor=0))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.BLACKWELL: 'BLACKWELL'>, compute_capability=ComputeCapability(major=10, minor=0))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.BLACKWELL: 'BLACKWELL'>, compute_capability=ComputeCapability(major=12, minor=0))))), kwargs={'ids': <class 'str'>})]
test(request, parameters: Parameters, workdir: Path, cmake_file_api: FileAPI) NoneView on GitHub
class tests.test.sass.matchers.test_cas.OperationView on GitHub

Bases: object

build() SequenceMatcherView on GitHub
class tests.test.sass.matchers.test_cas.TestAtomicCASMatcherView on GitHub

Bases: object

Tests for reprospect.test.sass.matchers.cas.AtomicCASMatcher.

BLOCK_CAS: Final[BasicBlock] = <reprospect.tools.sass.controlflow.BasicBlock object>
BLOCK_CAS_MOV: Final[BasicBlock] = <reprospect.tools.sass.controlflow.BasicBlock object>
BLOCK_LDG: Final[BasicBlock] = <reprospect.tools.sass.controlflow.BasicBlock object>
CFG: Final[Graph] = Graph(blocks=[<reprospect.tools.sass.controlflow.BasicBlock object>, <reprospect.tools.sass.controlflow.BasicBlock object>], edges={<reprospect.tools.sass.controlflow.BasicBlock object>: {<reprospect.tools.sass.controlflow.BasicBlock object>}})
CFG_MOV: Final[Graph] = Graph(blocks=[<reprospect.tools.sass.controlflow.BasicBlock object>, <reprospect.tools.sass.controlflow.BasicBlock object>], edges={<reprospect.tools.sass.controlflow.BasicBlock object>: {<reprospect.tools.sass.controlflow.BasicBlock object>}})
CONTROL_CODE: Final[ControlCode] = ControlCode(stall_count=1, yield_flag=True, read=7, write=0, wait=[False, False, False, False, False, False], reuse={'A': False, 'B': False, 'C': False, 'D': False})
test(cfg: Graph) NoneView on GitHub
class tests.test.sass.matchers.test_convert_fp32_to_fp16.TestConvertFp32ToFp16View on GitHub

Bases: object

Tests for reprospect.test.sass.matchers.convert_fp32_to_fp16.ConvertFp32ToFp16.

CODE: Final[str] = '#include "cuda_fp16.h"\n__global__ void test(__half* __restrict__ const dst, const float* __restrict__ const src) {\n    dst[0] = __float2half(src[0]);\n}\n'
pytestmark = [Mark(name='parametrize', args=('parameters', (Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.VOLTA: 'VOLTA'>, compute_capability=ComputeCapability(major=7, minor=0))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.TURING: 'TURING'>, compute_capability=ComputeCapability(major=7, minor=5))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.AMPERE: 'AMPERE'>, compute_capability=ComputeCapability(major=8, minor=0))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.AMPERE: 'AMPERE'>, compute_capability=ComputeCapability(major=8, minor=6))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.ADA: 'ADA'>, compute_capability=ComputeCapability(major=8, minor=9))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.HOPPER: 'HOPPER'>, compute_capability=ComputeCapability(major=9, minor=0))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.BLACKWELL: 'BLACKWELL'>, compute_capability=ComputeCapability(major=10, minor=0))), Parameters(arch=NVIDIAArch(family=<NVIDIAFamily.BLACKWELL: 'BLACKWELL'>, compute_capability=ComputeCapability(major=12, minor=0))))), kwargs={'ids': <class 'str'>})]
test(request, parameters: Parameters, workdir: Path, cmake_file_api) NoneView on GitHub
class tests.test.sass.matchers.test_move32.TestMove32MatcherView on GitHub

Bases: object

Tests for reprospect.test.sass.matchers.move32.Move32Matcher.

test_imad() NoneView on GitHub
test_mov() NoneView on GitHub