You like pytorch? You like micrograd? You love tinygrad! ❤️
This report presents the forensic synthetic code analysis of tinygrad/tinygrad, a Python project with 33,295 GitHub stars. SynthScan v2.0 examined 390,111 lines of code across 1091 source files, recording 4088 pattern matches distributed across 18 syntactic categories. The overall adjusted score of 10.7 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 4088 distinct pattern matches across 18 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/testextra/test_hk_fa.py | 82 | def test_fast_fa_bwd_causal_jitted(self): | CODE |
| LOW | test/testextra/test_bench_log.py | 16 | def test_log_single_wall_time(self): | CODE |
| LOW | test/testextra/test_bench_log.py | 26 | def test_log_double_wall_time(self): | CODE |
| LOW | test/testextra/test_bench_log.py | 42 | def test_log_single_kernel_time(self): | CODE |
| LOW | test/testextra/test_bench_log.py | 59 | def test_interleaved_wall_kernel_time(self): | CODE |
| LOW | test/testextra/test_bench_log.py | 81 | def test_stacked_wall_kernel_time(self): | CODE |
| LOW | test/testextra/test_tk.py | 78 | def test_simple_matmul_transposed(self): | CODE |
| LOW | test/testextra/test_tk.py | 164 | def test_load_store_local_hop(self): | CODE |
| LOW | test/testextra/test_tk.py | 204 | def test_load_store_multioutput(self): | CODE |
| LOW | test/testextra/test_tk.py | 887 | def test_fast_fa_bwd_causal_jitted(self): | CODE |
| LOW | test/testextra/test_tk.py | 938 | def test_fast_fa_bwd_multidevice(self): | CODE |
| LOW⚡ | test/testextra/test_lr_scheduler.py | 89 | def test_reducelronplateau_max(self): self._test_reducelronplateau(100, {'mode': 'max'}, 1e-6, 1e-6) | CODE |
| LOW⚡ | test/testextra/test_lr_scheduler.py | 90 | def test_reducelronplateau_factor(self): self._test_reducelronplateau(100, {'factor': 0.1337}, 1e-6, 1e-6) | CODE |
| LOW⚡ | test/testextra/test_lr_scheduler.py | 91 | def test_reducelronplateau_patience(self): self._test_reducelronplateau(100, {'patience': 3}, 1e-6, 1e-6) | CODE |
| LOW⚡ | test/testextra/test_lr_scheduler.py | 92 | def test_reducelronplateau_threshold(self): self._test_reducelronplateau(100, {'threshold': 1e-6}, 1e-6, 1e-6) | CODE |
| LOW⚡ | test/testextra/test_lr_scheduler.py | 93 | def test_reducelronplateau_threshold_mode(self): self._test_reducelronplateau(100, {'threshold_mode': 'abs'}, 1e-6, 1e | CODE |
| LOW⚡ | test/testextra/test_lr_scheduler.py | 96 | def test_cosineannealinglr_eta_min(self): self._test_cosineannealinglr(100, {'eta_min': 0.001}, 1e-6, 1e-6) | CODE |
| LOW | test/testextra/test_export_model.py | 21 | def test_multi_input_model_export(self): | CODE |
| LOW | test/testextra/test_export_model.py | 36 | def test_multi_output_model_export(self): | CODE |
| LOW | test/testextra/test_export_model.py | 54 | def test_exported_input_output_dtypes(self): | CODE |
| LOW | test/testextra/test_export_model.py | 71 | def test_weights_bound_to_safetensor(self): | CODE |
| LOW | test/testextra/test_mockgpu.py | 7 | def test_import_typing_extensions(self): | CODE |
| LOW | test/unit/test_gradient.py | 21 | def test_with_custom_gradient(self): | CODE |
| LOW | test/unit/test_gradient.py | 49 | def test_non_float_tensor_raise(self): | CODE |
| LOW | test/unit/test_gradient.py | 54 | def test_copy_to_device_gradient(self): | CODE |
| LOW⚡ | test/unit/test_gradient.py | 72 | def test_gradient_through_clone_from_grad_src(self): | CODE |
| LOW⚡ | test/unit/test_gradient.py | 80 | def test_gradient_through_clone_from_detached_src(self): | CODE |
| LOW⚡ | test/unit/test_gradient.py | 87 | def test_setitem_on_grad_used_tensor_raises(self): | CODE |
| LOW⚡ | test/unit/test_gradient.py | 93 | def test_gradient_through_chained_unrealized_setitem(self): | CODE |
| LOW⚡ | test/unit/test_gradient.py | 101 | def test_bare_const_skipped_by_backward(self): | CODE |
| LOW | test/unit/test_gradient.py | 122 | def test_custom_kernel_multi_output_backward(self): | CODE |
| LOW | test/unit/test_gradient.py | 134 | def test_custom_kernel_multi_output_backward_interacting(self): | CODE |
| LOW | test/unit/test_gradient.py | 146 | def test_custom_kernel_three_output_backward(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 34 | def test_tar_extract_returns_dict(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 38 | def test_tar_extract_correct_keys(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 42 | def test_tar_extract_content_size(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 47 | def test_tar_extract_content_values(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 52 | def test_tar_extract_empty_file(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 56 | def test_tar_extract_non_existent_file(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 60 | def test_tar_extract_invalid_file(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 98 | def test_tar_extract_returns_dict(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 102 | def test_tar_extract_correct_keys(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 106 | def test_tar_extract_content_size(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 111 | def test_tar_extract_content_values(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 116 | def test_tar_extract_empty_file(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 120 | def test_tar_extract_non_existent_file(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 124 | def test_tar_extract_invalid_file(self): | CODE |
| LOW⚡ | test/unit/test_tar.py | 128 | def test_tar_extract_invalid_file_long(self): | CODE |
| LOW | test/unit/test_invalid_tensor.py | 46 | def test_where_invalid_add_left(self): | CODE |
| LOW | test/unit/test_invalid_tensor.py | 78 | def test_where_reduce_always_true(self): | CODE |
| LOW | test/unit/test_gguf.py | 114 | def test_expected_failure_unknown_type(self): | CODE |
| LOW | test/unit/test_gguf.py | 250 | def test_gguf_load_no_tensor_leak(self): | CODE |
| LOW⚡ | test/unit/test_assign.py | 175 | def test_assign_changes_realized_alt(self): return self.test_assign_changes_alt(realize=True) | CODE |
| LOW⚡ | test/unit/test_assign.py | 177 | def test_assign_changes_buffer_alt(self): | CODE |
| LOW⚡ | test/unit/test_assign.py | 182 | def test_assign_diamond_cycle(self): | CODE |
| LOW⚡ | test/unit/test_assign.py | 191 | def test_assign_diamond_contiguous_cycle(self): | CODE |
| LOW⚡ | test/unit/test_assign.py | 199 | def test_assign_diamond_possible(self): | CODE |
| LOW⚡ | test/unit/test_assign.py | 206 | def test_assign_diamond_possible_contiguous(self): | CODE |
| LOW⚡ | test/unit/test_assign.py | 213 | def test_assign_diamond_both_contiguous(self): | CODE |
| LOW⚡ | test/unit/test_assign.py | 309 | def test_assign_after_partial(self): | CODE |
| 1828 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/unit/test_indexing.py | 1001 | # setting values | COMMENT |
| LOW | test/unit/test_indexing.py | 1021 | # strided = set_(reference, (2,), (4,), offset=4) | COMMENT |
| LOW | test/unit/test_indexing.py | 1121 | # [9 11 13 15]] | COMMENT |
| LOW | test/unit/test_indexing.py | 1141 | # [1, 0]]) | COMMENT |
| LOW | test/unit/test_indexing.py | 1181 | # reference = Tensor.arange(0., 24).realize().reshape(3, 8) | COMMENT |
| LOW | test/unit/test_jit_cases.py | 1 | import unittest | COMMENT |
| LOW | test/backend/test_edgecases.py | 1 | # end to end tests of tinygrad that you think might be edge cases. | COMMENT |
| LOW | test/null/test_uop_symbolic.py | 1381 | COMMENT | |
| LOW | test/external/external_test_am.py | 41 | # * 56 F | COMMENT |
| LOW | test/external/mlperf_retinanet/model/utils.py | 101 | """ | COMMENT |
| LOW | …l/mlperf_bert/preprocessing/create_pretraining_data.py | 221 | # We *usually* want to fill up the entire sequence since we are padding | COMMENT |
| LOW | …bert/preprocessing/external_test_preprocessing_part.py | 1 | # USAGE: | COMMENT |
| LOW | test/external/mlperf_resnet/lars_optimizer.py | 1 | # https://github.com/mlcommons/training/blob/e3769c8dcf88cd21e1001dd2f894b40a1513ec5d/image_classification/tensorflow2/l | COMMENT |
| LOW | test/external/mlperf_resnet/lars_util.py | 1 | # https://github.com/mlcommons/training/blob/e237206991d10449d9675d95606459a3cb6c21ad/image_classification/tensorflow2/l | COMMENT |
| LOW | extra/hook_cuda.py | 141 | #if name == "exp2_kernel_vectorized4_kernel": | COMMENT |
| LOW | extra/hook_cuda.py | 181 | #install_hook(cuda.cuFuncGetModule, dummy) | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 201 | #define ATHUB_BASE__INST0_SEG1 0x02408C00 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 221 | #define ATHUB_BASE__INST3_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 241 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 261 | #define CLK_BASE__INST3_SEG1 0x02402400 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 281 | #define CLK_BASE__INST6_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 301 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 321 | #define DF_BASE__INST6_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 341 | #define DIO_BASE__INST2_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 361 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 381 | #define DCN_BASE__INST2_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 401 | #define DCN_BASE__INST5_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 421 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 441 | #define DPCS_BASE__INST5_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 461 | #define FUSE_BASE__INST1_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 481 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 501 | #define GC_BASE__INST1_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 521 | #define GC_BASE__INST4_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 541 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 561 | #define HDA_BASE__INST4_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 581 | #define HDP_BASE__INST0_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 601 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 621 | #define MMHUB_BASE__INST0_SEG1 0x02408800 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 641 | #define MMHUB_BASE__INST3_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 661 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 681 | #define MP0_BASE__INST3_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 701 | #define MP0_BASE__INST6_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 721 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 741 | #define MP1_BASE__INST6_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 761 | #define NBIO_BASE__INST2_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 781 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 801 | #define OSSSYS_BASE__INST2_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 821 | #define OSSSYS_BASE__INST5_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 841 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 861 | #define PCIE0_BASE__INST5_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 881 | #define SDMA0_BASE__INST1_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 901 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 921 | #define SDMA1_BASE__INST1_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 941 | #define SDMA1_BASE__INST4_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 961 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 981 | #define SMUIO_BASE__INST4_SEG1 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 1001 | #define THM_BASE__INST0_SEG3 0 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 1021 | COMMENT | |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 1041 | #define UMC_BASE__INST0_SEG1 0x02425800 | COMMENT |
| LOW | extra/hip_gpu_driver/sienna_cichlid_ip_offset.h | 1061 | #define UMC_BASE__INST3_SEG3 0 | COMMENT |
| 940 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/testextra/test_mockgpu.py | 8 | CODE | |
| LOW | test/backend/test_linearizer.py | 18 | CODE | |
| LOW | test/backend/test_uops.py | 6 | CODE | |
| LOW | test/backend/test_ops.py | 13 | CODE | |
| LOW | test/amd/test_sqtt_encoder.py | 9 | CODE | |
| LOW | test/amd/disasm.py | 2 | CODE | |
| LOW | test/amd/test_asm_kernel.py | 10 | CODE | |
| LOW | test/amd/test_dsl2.py | 2 | CODE | |
| LOW | test/amd/test_formats.py | 7 | CODE | |
| LOW | test/amd/test_handwritten.py | 5 | CODE | |
| LOW | test/amd/test_integration.py | 4 | CODE | |
| LOW | test/amd/test_rdna3_asm.py | 3 | CODE | |
| LOW | test/amd/hw/test_vop1.py | 8 | CODE | |
| LOW | test/amd/hw/test_scratch.py | 6 | CODE | |
| LOW | test/amd/hw/test_dpp.py | 8 | CODE | |
| LOW | test/amd/hw/test_flat.py | 6 | CODE | |
| LOW | test/amd/hw/test_sop.py | 7 | CODE | |
| LOW | test/amd/hw/test_vopc.py | 6 | CODE | |
| LOW | test/amd/hw/test_vop3p.py | 6 | CODE | |
| LOW | test/amd/hw/test_smem.py | 7 | CODE | |
| LOW | test/amd/hw/test_ds.py | 8 | CODE | |
| LOW | test/amd/hw/test_vop3.py | 7 | CODE | |
| LOW | test/amd/hw/test_vop2.py | 8 | CODE | |
| LOW | test/amd/hw/test_global.py | 6 | CODE | |
| LOW | test/amd/hw/helpers.py | 7 | CODE | |
| LOW | test/amd/hw/test_vinterp.py | 3 | CODE | |
| LOW | test/null/test_uops.py | 6 | CODE | |
| LOW | test/null/test_uops.py | 8 | CODE | |
| LOW | test/mockgpu/usb.py | 1 | CODE | |
| LOW | test/mockgpu/am/amgpu.py | 2 | CODE | |
| LOW | test/mockgpu/am/amdriver.py | 1 | CODE | |
| LOW | test/mockgpu/cuda/cuda.py | 1 | CODE | |
| LOW | test/mockgpu/amd/emu.py | 8 | CODE | |
| LOW | test/external/fuzz_shape_ops.py | 1 | CODE | |
| LOW | test/external/external_test_am_fault_recovery.py | 4 | CODE | |
| LOW | test/external/external_benchmark_op_conv.py | 2 | CODE | |
| LOW | test/external/external_benchmark_op_conv.py | 5 | CODE | |
| LOW | test/external/external_benchmark_op_conv.py | 5 | CODE | |
| LOW | test/external/mlperf_bert/preprocessing/tokenization.py | 5 | CODE | |
| LOW | test/external/mlperf_bert/preprocessing/tokenization.py | 6 | CODE | |
| LOW | test/external/mlperf_bert/preprocessing/tokenization.py | 7 | CODE | |
| LOW | …l/mlperf_bert/preprocessing/create_pretraining_data.py | 6 | CODE | |
| LOW | …l/mlperf_bert/preprocessing/create_pretraining_data.py | 7 | CODE | |
| LOW | …l/mlperf_bert/preprocessing/create_pretraining_data.py | 8 | CODE | |
| LOW | test/external/mlperf_resnet/lars_optimizer.py | 20 | CODE | |
| LOW | test/external/mlperf_resnet/lars_optimizer.py | 21 | CODE | |
| LOW | test/external/mlperf_resnet/lars_optimizer.py | 22 | CODE | |
| LOW | test/external/mlperf_resnet/lars_optimizer.py | 26 | CODE | |
| LOW | test/external/mlperf_resnet/lars_util.py | 22 | CODE | |
| LOW | test/external/mlperf_resnet/lars_util.py | 23 | CODE | |
| LOW | test/external/mlperf_resnet/lars_util.py | 24 | CODE | |
| LOW | test/external/mlperf_resnet/lars_util.py | 30 | CODE | |
| LOW | tinygrad/device.py | 1 | CODE | |
| LOW | tinygrad/dtype.py | 1 | CODE | |
| LOW | tinygrad/__init__.py | 5 | CODE | |
| LOW | tinygrad/__init__.py | 6 | CODE | |
| LOW | tinygrad/__init__.py | 7 | CODE | |
| LOW | tinygrad/__init__.py | 10 | CODE | |
| LOW | tinygrad/__init__.py | 11 | CODE | |
| LOW | tinygrad/__init__.py | 11 | CODE | |
| 538 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/amd/disasm.py | 41 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 43 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 63 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 65 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 81 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 83 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 103 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 105 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 171 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 173 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 640 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/disasm.py | 642 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/test_sqtt_examples.py | 20 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/amd/test_sqtt_examples.py | 22 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/mockgpu/amd/pcode.py | 84 | # ═════ FP8 (E4M3) and BF8 (E5M2) conversion helpers ═════ | COMMENT |
| MEDIUM | test/mockgpu/amd/pcode.py | 380 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | test/mockgpu/amd/pcode.py | 382 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | test/mockgpu/amd/emu.py | 2109 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM⚡ | test/mockgpu/amd/emu.py | 2111 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 76 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 78 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 419 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 421 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 786 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 788 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 2053 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 2055 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 2161 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/mockgpu/amd/emu.py | 2163 | # ═══════════════════════════════════════════════════════════════════════════════ | STRING |
| MEDIUM | test/external/mlperf_resnet/lars_optimizer.py | 17 | # ============================================================================== | COMMENT |
| MEDIUM | test/external/mlperf_resnet/lars_util.py | 19 | # ============================================================================== | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 15 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 17 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 181 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 183 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 206 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 208 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 253 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 255 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 432 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 434 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 577 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 579 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 644 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 646 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 697 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/sqtt.py | 699 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/dsl.py | 4 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/dsl.py | 6 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/dsl.py | 91 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/dsl.py | 93 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/dsl.py | 142 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/dsl.py | 144 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | tinygrad/renderer/amd/dsl.py | 234 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | tinygrad/renderer/amd/dsl.py | 236 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | tinygrad/renderer/amd/dsl.py | 244 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | tinygrad/renderer/amd/dsl.py | 246 | # ══════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/generate.py | 7 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/generate.py | 9 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | tinygrad/renderer/amd/generate.py | 41 | # ═══════════════════════════════════════════════════════════════════════════════ | COMMENT |
| 58 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sz.py | 17 | CODE | |
| LOW | test/testextra/test_bench_log.py | 81 | CODE | |
| LOW | test/unit/test_cpu.py | 11 | CODE | |
| LOW | test/unit/test_gguf.py | 194 | CODE | |
| LOW | test/unit/test_multitensor.py | 131 | CODE | |
| LOW | test/unit/test_tinyfs.py | 11 | CODE | |
| LOW | test/speed/external_test_copy_speed.py | 80 | CODE | |
| LOW | test/backend/test_symbolic_ops.py | 272 | CODE | |
| LOW | test/backend/test_symbolic_ops.py | 300 | CODE | |
| LOW | test/backend/test_multitensor.py | 429 | CODE | |
| LOW | test/backend/test_nn.py | 16 | CODE | |
| LOW | test/backend/test_jit.py | 294 | CODE | |
| LOW | test/backend/test_uops.py | 88 | CODE | |
| LOW | test/backend/test_uops.py | 160 | CODE | |
| LOW | test/backend/test_ops.py | 712 | CODE | |
| LOW | test/backend/test_ops.py | 1805 | CODE | |
| LOW | test/backend/test_ops.py | 1820 | CODE | |
| LOW | test/backend/test_ops.py | 2324 | CODE | |
| LOW | test/backend/test_ops.py | 2353 | CODE | |
| LOW | test/backend/test_ops.py | 2362 | CODE | |
| LOW | test/backend/test_ops.py | 2486 | CODE | |
| LOW | test/amd/disasm.py | 47 | CODE | |
| LOW | test/amd/disasm.py | 151 | CODE | |
| LOW | test/amd/disasm.py | 284 | CODE | |
| LOW | test/amd/disasm.py | 334 | CODE | |
| LOW | test/amd/disasm.py | 724 | CODE | |
| LOW | test/amd/test_sqtt_examples.py | 24 | CODE | |
| LOW | test/amd/test_sqtt_examples.py | 45 | CODE | |
| LOW | test/amd/test_sqtt_examples.py | 111 | CODE | |
| LOW | test/amd/test_sqtt_examples.py | 122 | CODE | |
| LOW | test/amd/test_sqtt_examples.py | 166 | CODE | |
| LOW | test/amd/test_sqtt_examples.py | 196 | CODE | |
| LOW | test/amd/test_sqttmap.py | 85 | CODE | |
| LOW | test/amd/test_sqttmap.py | 96 | CODE | |
| LOW | test/amd/test_sqttmap.py | 120 | CODE | |
| LOW | test/amd/test_sqttmap.py | 150 | CODE | |
| LOW | test/amd/test_roundtrip.py | 57 | CODE | |
| LOW | test/amd/test_roundtrip.py | 115 | CODE | |
| LOW | test/amd/test_llvm.py | 84 | CODE | |
| LOW | test/amd/test_llvm.py | 85 | CODE | |
| LOW | test/amd/hw/helpers.py | 238 | CODE | |
| LOW | test/null/test_dtype_spec.py | 166 | CODE | |
| LOW | test/null/test_dtype_spec.py | 174 | CODE | |
| LOW | test/null/test_tqdm.py | 72 | CODE | |
| LOW | test/null/test_tqdm.py | 253 | CODE | |
| LOW | test/mockgpu/mockgpu.py | 37 | CODE | |
| LOW | test/mockgpu/usb.py | 144 | CODE | |
| LOW | test/mockgpu/usb.py | 171 | CODE | |
| LOW | test/mockgpu/am/amdriver.py | 99 | CODE | |
| LOW | test/mockgpu/amd/amdgpu.py | 46 | CODE | |
| LOW | test/mockgpu/amd/amdgpu.py | 90 | CODE | |
| LOW | test/mockgpu/amd/amdgpu.py | 267 | CODE | |
| LOW | test/mockgpu/amd/amddriver.py | 117 | CODE | |
| LOW | test/mockgpu/amd/amddriver.py | 180 | CODE | |
| LOW | test/mockgpu/amd/pcode.py | 402 | CODE | |
| LOW | test/mockgpu/amd/pcode.py | 925 | CODE | |
| LOW | test/mockgpu/amd/pcode.py | 935 | CODE | |
| LOW | test/mockgpu/amd/pcode.py | 538 | CODE | |
| LOW | test/mockgpu/amd/pcode.py | 552 | CODE | |
| LOW | test/mockgpu/amd/pcode.py | 667 | CODE | |
| 219 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | test/amd/test_formats.py | 154 | # v_add3_u32 v5, null, exec_lo, 0xaf123456 | COMMENT |
| HIGH | test/amd/test_rdna3_asm.py | 37 | "s_mulk_i32 s3, 0x87", "v_mad_u64_u32 v[1:2], null, s2, 3, v[1:2]", "v_mul_u32_u24_e32 v0, 45, v0", | CODE |
| HIGH | tinygrad/runtime/ops_metal.py | 108 | proc = subprocess.Popen(f"cd {pathlib.Path(__file__).parents[2]}/extra/disassemblers/applegpu && python3 compiler_ | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 577 | SOPPOp.S_CBRANCH_CDBGSYS_OR_USER: "if (WAVE_STATUS.COND_DBG_SYS || WAVE_STATUS.COND_DBG_USER) then\nPC = PC + signext( | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 578 | SOPPOp.S_CBRANCH_CDBGSYS_AND_USER: "if (WAVE_STATUS.COND_DBG_SYS && WAVE_STATUS.COND_DBG_USER) then\nPC = PC + signext | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 673 | VOP2Op.V_MIN_F32_E32: "if (WAVE_MODE.IEEE && isSignalNAN(64'F(S0.f32))) then\nD0.f32 = 32'F(cvtToQuietNAN(64'F(S0.f32) | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 674 | VOP2Op.V_MAX_F32_E32: "if (WAVE_MODE.IEEE && isSignalNAN(64'F(S0.f32))) then\nD0.f32 = 32'F(cvtToQuietNAN(64'F(S0.f32) | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 708 | VOP2Op.V_MAX_F16_E32: "if (WAVE_MODE.IEEE && isSignalNAN(64'F(S0.f16))) then\nD0.f16 = 16'F(cvtToQuietNAN(64'F(S0.f16) | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 709 | VOP2Op.V_MIN_F16_E32: "if (WAVE_MODE.IEEE && isSignalNAN(64'F(S0.f16))) then\nD0.f16 = 16'F(cvtToQuietNAN(64'F(S0.f16) | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 933 | VOP3Op.V_MIN_F32_E64: "if (WAVE_MODE.IEEE && isSignalNAN(64'F(S0.f32))) then\nD0.f32 = 32'F(cvtToQuietNAN(64'F(S0.f32) | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 934 | VOP3Op.V_MAX_F32_E64: "if (WAVE_MODE.IEEE && isSignalNAN(64'F(S0.f32))) then\nD0.f32 = 32'F(cvtToQuietNAN(64'F(S0.f32) | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 958 | VOP3Op.V_MAX_F16_E64: "if (WAVE_MODE.IEEE && isSignalNAN(64'F(S0.f16))) then\nD0.f16 = 16'F(cvtToQuietNAN(64'F(S0.f16) | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 959 | VOP3Op.V_MIN_F16_E64: "if (WAVE_MODE.IEEE && isSignalNAN(64'F(S0.f16))) then\nD0.f16 = 16'F(cvtToQuietNAN(64'F(S0.f16) | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 1099 | VOP3Op.V_MIN_F64: "if (WAVE_MODE.IEEE && isSignalNAN(S0.f64)) then\nD0.f64 = cvtToQuietNAN(S0.f64)\nelsif (WAVE_MODE.I | CODE |
| HIGH | tinygrad/runtime/autogen/amd/cdna/str_pcode.py | 1100 | VOP3Op.V_MAX_F64: 'if (WAVE_MODE.IEEE && isSignalNAN(S0.f64)) then\nD0.f64 = cvtToQuietNAN(S0.f64)\nelsif (WAVE_MODE.I | CODE |
| HIGH | tinygrad/runtime/autogen/amd/rdna3/str_pcode.py | 115 | DSOp.DS_BVH_STACK_RTN_B32: '(stack_base, stack_index) = DECODE_ADDR(ADDR, OFFSET1);\nlast_node_ptr = DATA0;\n// First | CODE |
| HIGH | tinygrad/runtime/autogen/amd/rdna3/str_pcode.py | 598 | SOPPOp.S_CBRANCH_CDBGSYS_OR_USER: "if (WAVE_STATUS.COND_DBG_SYS || WAVE_STATUS.COND_DBG_USER) then\nPC = PC + signext( | CODE |
| HIGH | tinygrad/runtime/autogen/amd/rdna3/str_pcode.py | 599 | SOPPOp.S_CBRANCH_CDBGSYS_AND_USER: "if (WAVE_STATUS.COND_DBG_SYS && WAVE_STATUS.COND_DBG_USER) then\nPC = PC + signext | CODE |
| HIGH | extra/mlx_driver/connect.py | 18 | SSH + [f"cd ~/tinygrad && sudo PYTHONPATH=. MLX_DEBUG=1 MLX_PCI={REMOTE_PCI} MLX_IP={REMOTE_IP} python3 extra/mlx_driv | CODE |
| HIGH | extra/nv_pma/cupti/cu_prof_ext.py | 53 | if DEBUG >= 1: print(" CUPTI: PC sampling needs: echo 'options nvidia NVreg_RestrictProfilingToAdminUsers=0'| | CODE |
| HIGH | examples/webgpu/stable_diffusion/compile.py | 134 | const metadata = safetensor ? getTensorMetadata(safetensor[0]) : null; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/helpers.py | 112 | except Exception as e: self.skipTest(f"second device not available: {e}") | CODE |
| LOW | test/unit/test_multitensor.py | 948 | except Exception as e: | CODE |
| LOW | test/backend/test_jit.py | 388 | except Exception: raise unittest.SkipTest("no multidevice") | CODE |
| LOW | test/backend/test_jit.py | 411 | except Exception: raise unittest.SkipTest("no multidevice") | CODE |
| LOW | test/backend/test_profiler.py | 100 | except Exception as e: self.skipTest(f"second device not available {e}") | CODE |
| LOW | test/backend/test_profiler.py | 115 | except Exception as e: self.skipTest(f"second device not available {e}") | CODE |
| LOW | test/backend/test_profiler.py | 127 | except Exception as e: self.skipTest(f"second device not available {e}") | CODE |
| LOW | test/backend/test_profiler.py | 152 | except Exception as e: self.skipTest(f"multiple devices not available {e}") | CODE |
| LOW | test/backend/test_ops.py | 52 | except Exception as e: | CODE |
| LOW | test/backend/test_asm_gemm.py | 14 | except Exception: return False | CODE |
| LOW | test/amd/test_sqtt_examples.py | 84 | except Exception as e: exc = e | CODE |
| LOW | test/amd/test_sqttmap.py | 29 | except Exception as e: self.skipTest(f"latest rocprof not available, install with extra/sqtt/install_rocprof_decoder | CODE |
| LOW | test/amd/test_roundtrip.py | 152 | except Exception as e: | CODE |
| LOW | test/amd/test_emu2_pcode.py | 374 | except Exception as e: self.fail(f"[{arch}] {op.name}: {e}\nPcode: {pcode[:200]}") | CODE |
| LOW | test/amd/test_llvm.py | 117 | except Exception: skipped += 1 | CODE |
| LOW | test/amd/test_llvm.py | 129 | except Exception: pass | CODE |
| LOW⚡ | test/null/test_device.py | 74 | except Exception as e: self.skipTest(f"skipping compiler test: not all compilers: {e}") | CODE |
| LOW | test/null/test_device.py | 86 | except Exception as e: self.skipTest(f"skipping compiler test: not all compilers: {e}") | CODE |
| LOW | test/null/test_device.py | 101 | except Exception as e: self.skipTest(f"skipping compiler test: not all compilers: {e}") | CODE |
| LOW | test/null/test_device.py | 117 | except Exception as e: self.skipTest(f"skipping: LLVM not available: {e}") | CODE |
| LOW | test/mockgpu/am/amgpu.py | 35 | except Exception: return {} | CODE |
| LOW | test/mockgpu/cuda/cuda.py | 131 | except Exception as e: | CODE |
| MEDIUM | test/mockgpu/cuda/cuda.py | 132 | print("Error in cuLaunchKernel:", e) | CODE |
| LOW | test/mockgpu/amd/pcode.py | 1162 | except Exception: pass | CODE |
| LOW⚡ | test/mockgpu/amd/emu.py | 2104 | except Exception as e: | STRING |
| LOW⚡ | test/mockgpu/amd/emu.py | 2106 | except Exception: inst_str = f"<{type(inst).__name__}>" | STRING |
| LOW | test/mockgpu/amd/emu.py | 38 | except Exception: return None, 0 | STRING |
| LOW | test/mockgpu/nv/nvgpu.py | 99 | except Exception as e: print("failed to execute:", e) | CODE |
| LOW | test/device/test_hcq.py | 316 | except Exception: self.skipTest("no multidevice, test skipped") | CODE |
| LOW | test/device/test_hcq.py | 374 | except Exception: self.skipTest("no multidevice, test skipped") | CODE |
| LOW | test/device/test_hcq.py | 452 | except Exception: self.skipTest("no multidevice, test skipped") | CODE |
| LOW | test/device/test_hcq.py | 568 | except Exception: break | CODE |
| LOW | test/device/test_hcq.py | 597 | except Exception: self.skipTest("no AMD device, test skipped") | CODE |
| LOW | test/device/test_hcq.py | 600 | except Exception: self.skipTest("no NV device, test skipped") | CODE |
| LOW⚡ | test/device/test_hcq.py | 611 | except Exception: self.skipTest("no AMD device, test skipped") | CODE |
| LOW⚡ | test/device/test_hcq.py | 616 | except Exception: self.skipTest("no NV device, test skipped") | CODE |
| LOW⚡ | test/device/test_hcq.py | 627 | except Exception: self.skipTest("no multidevice, test skipped") | CODE |
| MEDIUM | test/device/test_hcq.py | 607 | def test_multidevice_p2p(self): | CODE |
| LOW | test/external/external_test_process_count.py | 15 | except Exception as e: | CODE |
| LOW⚡ | test/external/external_model_benchmark.py | 77 | except Exception as e: | CODE |
| LOW⚡ | test/external/external_model_benchmark.py | 83 | except Exception as e: print(f"{m:16s}torch_cpu {type(e).__name__:>25}") | CODE |
| LOW⚡ | test/external/external_model_benchmark.py | 89 | except Exception as e: print(f"{m:16s}torch_{torch_device} {type(e).__name__:>25}") | CODE |
| LOW | test/external/external_model_benchmark.py | 101 | except Exception as e: print(f"{m:16s}onnxruntime_{backend.lower()} {type(e).__name__:>25}") | CODE |
| LOW | test/external/external_test_example.py | 19 | except Exception: | CODE |
| LOW | test/external/external_test_example.py | 58 | except Exception: | CODE |
| MEDIUM | test/external/external_test_example.py | 55 | def test_example_matmul(self, device): | CODE |
| LOW | test/external/external_fuzz_hcq_mp.py | 33 | except Exception as e: | CODE |
| LOW | test/external/external_test_gpu_crash.py | 41 | except Exception: | CODE |
| LOW | test/external/external_benchmark_pyrender.py | 28 | except Exception: ren = "PYRENDER_ERR" | CODE |
| LOW | test/external/process_replay/process_replay.py | 94 | except Exception as e: | CODE |
| LOW | test/external/process_replay/process_replay.py | 126 | except Exception as e: | CODE |
| LOW⚡ | tinygrad/device.py | 363 | except Exception as e: iface_results.append(f"{colored('-', 'red')} {iface.__name__[:-5]}: {e}") | CODE |
| LOW⚡ | tinygrad/device.py | 370 | except Exception as e: ren_results.append(f"{colored('-', 'red')} {d._renderer_name(r)}: {e}") | CODE |
| LOW⚡ | tinygrad/device.py | 373 | except Exception as e: result = f"{colored('FAIL', 'red')} {e}" | CODE |
| LOW | tinygrad/helpers.py | 146 | except Exception as e: excs.append(e) | CODE |
| LOW | tinygrad/runtime/ops_cpu.py | 41 | except Exception as e: self.dev.error_state = e | CODE |
| LOW | tinygrad/runtime/ops_amd.py | 687 | except Exception as e: | CODE |
| LOW | tinygrad/runtime/support/autogen.py | 288 | except Exception as e: raise Exception("parsing failed") from e | CODE |
| LOW | tinygrad/runtime/support/compiler_mesa.py | 80 | except Exception as e: print("Failed to generate SASS", str(e), "Make sure your PATH contains nvdisasm binary of com | CODE |
| LOW | tinygrad/runtime/support/compiler_cuda.py | 42 | except Exception as e: print("Failed to generate SASS", str(e), "Make sure your PATH contains ptxas/nvdisasm binary of | CODE |
| 26 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | tinygrad/renderer/llvmir.py | 46 | # example: %wmma0 = call <8 x float> @llvm.amdgcn.wmma.f32.16x16x16.f16(<16 x half> %v99,<16 x half> %v100,<8 x float> | COMMENT |
| CRITICAL | tinygrad/renderer/llvmir.py | 236 | do_bf8: %packed_bf8 = call i32 @llvm.amdgcn.cvt.pk.bf8.f32(float %phi_val, float %phi_val, i32 0, i1 false)\n br label | CODE |
| CRITICAL | tinygrad/renderer/llvmir.py | 237 | do_fp8: %packed_fp8 = call i32 @llvm.amdgcn.cvt.pk.fp8.f32(float %phi_val, float %phi_val, i32 0, i1 false)\n br label | CODE |
| CRITICAL | tinygrad/runtime/ops_amd.py | 661 | self.dev.iface.pci_dev.usb.scsi_read_arm(lsize:=min(cp_size, dest.nbytes - i)) | CODE |
| CRITICAL | tinygrad/runtime/support/system.py | 276 | if b.owner != self.dev: self.dev.iface.dev_impl.mm.unmap_range(b.va_addr, round_up(b.size, 0x1000)) | CODE |
| CRITICAL | …/tinychat/assets/unpkg.com/marked@13.0.0/marked.min.js | 6 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?def | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/backend/test_optim.py | 35 | CODE | |
| LOW | test/backend/test_jit.py | 245 | CODE | |
| LOW | test/backend/test_softmax_fusion.py | 27 | CODE | |
| LOW | test/backend/test_ops.py | 25 | CODE | |
| LOW | test/external/external_test_lr_schedule.py | 22 | CODE | |
| LOW | test/external/external_test_optim.py | 33 | CODE | |
| LOW | test/external/external_test_optim.py | 47 | CODE | |
| LOW | test/external/mlperf_retinanet/model/transform.py | 163 | CODE | |
| LOW | tinygrad/nn/onnx.py | 559 | CODE | |
| LOW | tinygrad/nn/onnx.py | 732 | CODE | |
| LOW | tinygrad/nn/onnx.py | 775 | CODE | |
| LOW | tinygrad/nn/onnx.py | 1000 | CODE | |
| LOW | tinygrad/nn/onnx.py | 1046 | CODE | |
| LOW | tinygrad/nn/optim.py | 83 | CODE | |
| LOW | tinygrad/nn/optim.py | 101 | CODE | |
| LOW | tinygrad/nn/optim.py | 153 | CODE | |
| LOW | tinygrad/runtime/ops_amd.py | 92 | CODE | |
| LOW | tinygrad/runtime/support/autogen.py | 102 | CODE | |
| LOW | tinygrad/uop/ops.py | 1237 | CODE | |
| LOW | extra/multitensor.py | 28 | CODE | |
| LOW | extra/models/llama.py | 196 | CODE | |
| LOW | extra/models/resnet.py | 33 | CODE | |
| LOW | extra/models/resnet.py | 62 | CODE | |
| LOW | extra/models/mask_rcnn.py | 867 | CODE | |
| LOW | extra/models/mask_rcnn.py | 879 | CODE | |
| LOW | extra/models/retinanet.py | 198 | CODE | |
| LOW | extra/models/bert.py | 14 | CODE | |
| LOW | extra/models/bert.py | 43 | CODE | |
| LOW | extra/models/rnnt.py | 10 | CODE | |
| LOW | extra/gemm/cdna_asm_gemm.py | 344 | CODE | |
| LOW | extra/hcq2/ops_amd2.py | 55 | CODE | |
| LOW | examples/mamba.py | 93 | CODE | |
| LOW | examples/beautiful_cartpole.py | 82 | CODE | |
| LOW | examples/mixtral.py | 22 | CODE | |
| LOW | examples/mlperf/metrics.py | 46 | CODE | |
| LOW | examples/mlperf/optim.py | 25 | CODE | |
| LOW | examples/mlperf/models/flat_llama.py | 39 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | test/amd/hw/test_dpp.py | 0 | .text .globl test .p2align 8 .type test,@function test: .byte {byte_str} .rodata .p2align 6 .amdhsa_kernel test .amdhsa_ | STRING |
| HIGH | test/amd/hw/test_cdna_vop3.py | 0 | .text .globl test .p2align 8 .type test,@function test: .byte {byte_str} .rodata .p2align 6 .amdhsa_kernel test .amdhsa_ | STRING |
| HIGH | test/amd/hw/test_rdna4_permlane_var.py | 0 | .text .globl test .p2align 8 .type test,@function test: .byte {byte_str} .rodata .p2align 6 .amdhsa_kernel test .amdhsa_ | STRING |
| HIGH | test/amd/hw/helpers.py | 0 | .text .globl test .p2align 8 .type test,@function test: .byte {byte_str} .rodata .p2align 6 .amdhsa_kernel test .amdhsa_ | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/mockgpu/amd/emu.py | 927 | # For PAD and SEXT, unused bits are zero (PAD) or sign-extended (SEXT). For DWORD, just return val. | STRING |
| LOW | test/mockgpu/nv/nvdriver.py | 211 | # Profiler commands - just pass through for mockgpu | COMMENT |
| MEDIUM | test/external/external_llm_eval.py | 2 | # uses Meta's exact ARC-Challenge prompt template from lm-evaluation-harness llama3 tasks | COMMENT |
| LOW | tinygrad/nn/optim.py | 73 | # LARS is essentially just trust ratio to SGD so if we just set the trust coeff 0.0 it's just standard SGD. | COMMENT |
| LOW | tinygrad/nn/optim.py | 131 | # LAMB is essentially just the trust ratio part of LARS applied to Adam/W so if we just set the trust ratio to 1.0 it's | COMMENT |
| LOW | tinygrad/runtime/ops_metal.py | 64 | # library is loaded first then RTLD_LOCAL library will just use it's symbols. On linux there is RTLD_DEEPBIND to preve | COMMENT |
| LOW | tinygrad/runtime/ops_metal.py | 98 | # Fields other than invoke are unused in this case so we can just use ctypes.byref with negative offset to invoke fi | COMMENT |
| LOW | tinygrad/uop/ops.py | 1484 | # without tracking, we just call the function | COMMENT |
| LOW | extra/models/llama.py | 150 | # if temperature is very low just use argmax | COMMENT |
| MEDIUM⚡ | extra/gemm/amd_asm_matmul.py | 435 | # Test harness | COMMENT |
| LOW | examples/tools/bandwidth_test.py | 19 | # this copy would be optimized out, just add 1 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/amd/hw/test_vopc.py | 816 | # Set VCC to all 1s first | COMMENT |
| LOW | test/amd/hw/test_vopc.py | 818 | # Set EXEC to only lane 0 | COMMENT |
| LOW | test/null/test_simplify_valid_idx.py | 161 | s.add(Not(load == simplifed_load)) # Check if they are NOT equivalent | CODE |
| LOW | test/null/test_simplify_valid_idx.py | 169 | s.add(Not(load == wrong_simplifed_load)) # Check if they are NOT equivalent | CODE |
| LOW | test/mockgpu/usb.py | 160 | # Check if upper 32 bits of a 64-bit BAR | COMMENT |
| LOW | test/mockgpu/amd/pcode.py | 1305 | # Check if any branch returned a value (lambda-style) | COMMENT |
| LOW | test/mockgpu/amd/emu.py | 1348 | # Check if sources are VGPRs (offset >= 256) vs inline constants/SGPRs | STRING |
| LOW | test/mockgpu/amd/emu.py | 2066 | # Check if instruction matches any cached canonical pattern (must also match instruction type to avoid variant conflic | STRING |
| LOW | tinygrad/renderer/amd/generate.py | 394 | # Check if this is a suffix-only variant | COMMENT |
| LOW | tinygrad/runtime/graph/hcq.py | 320 | # Check if all devices are HCQ | COMMENT |
| LOW | tinygrad/runtime/graph/hcq.py | 327 | # Check if all devices are within the same peer group. Allow cross-peer-group if all peer groups have RDMA devices. | COMMENT |
| LOW | tinygrad/runtime/support/hcq.py | 596 | # Check if the next buffer is safe to be used (its signal has passed) and reserve it. | COMMENT |
| LOW | tinygrad/runtime/support/system.py | 141 | os.umask(0) # Set umask to 0 to allow creating files with 0666 permissions | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/mockgpu/amd/amdgpu.py | 117 | for _ in range(n + 1): self._next_dword() # TODO: implement | CODE |
| LOW⚡ | extra/huggingface_onnx/huggingface_manager.py | 38 | # TODO: implement attribute with graph type and Loop op | COMMENT |
| LOW⚡ | extra/huggingface_onnx/huggingface_manager.py | 40 | # TODO: implement SimplifiedLayerNormalization, SkipSimplifiedLayerNormalization, GroupQueryAttention | COMMENT |
| LOW⚡ | extra/huggingface_onnx/huggingface_manager.py | 42 | # TODO: implement SimplifiedLayerNormalization, SkipSimplifiedLayerNormalization, RotaryEmbedding, MultiHeadAttention | COMMENT |
| LOW⚡ | extra/huggingface_onnx/huggingface_manager.py | 44 | # TODO: implement RandomNormalLike | COMMENT |
| LOW⚡ | extra/huggingface_onnx/huggingface_manager.py | 46 | # TODO: implement NonZero | COMMENT |
| LOW | examples/mlperf/model_train.py | 984 | # TODO: implement grad accumulation + mlperf logging | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/backend/test_multitensor.py | 299 | # Create a copy from device 0 to 1: 1 entry. | COMMENT |
| MEDIUM | test/amd/test_emu2_pcode.py | 200 | # Create a mock LDS buffer | COMMENT |
| MEDIUM | tinygrad/runtime/support/compiler_cpu.py | 58 | # Create a per-instance context instead of using the global context to avoid shared state between parallel test proc | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …re.com/ajax/libs/highlight.js/11.10.0/highlight.min.js | 317 | }),ie=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code", | CODE |
| LOW | examples/mlperf/model_train.py | 1507 | def fake_data(bs, samples): | CODE |
| LOW | examples/mlperf/model_train.py | 1515 | return fake_data(BS, SAMPLES) | CODE |
| LOW | examples/mlperf/model_train.py | 1528 | return fake_data(EVAL_BS, EVAL_SAMPLES) | CODE |
| LOW | examples/mlperf/model_train.py | 1796 | def fake_data(bs, samples): | CODE |
| LOW | examples/mlperf/model_train.py | 1804 | return fake_data(BS, SAMPLES) | CODE |
| LOW | examples/mlperf/model_train.py | 1817 | return fake_data(EVAL_BS, EVAL_SAMPLES) | CODE |
| LOW | …kg.com/@highlightjs/cdn-assets@11.9.0/highlight.min.js | 317 | }),re=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/null/test_viz.py | 29 | def set_data(self) -> None: | CODE |
| LOW | tinygrad/renderer/amd/dsl.py | 191 | if not isinstance(val, Reg): raise TypeError(f"VGPRField requires Reg, got {type(val).__name__}") | CODE |
| LOW | tinygrad/renderer/amd/dsl.py | 207 | if not isinstance(val, Reg): raise TypeError(f"{self.__class__.__name__} requires Reg, got {type(val).__name__}") | CODE |
| LOW⚡ | tinygrad/renderer/amd/dsl.py | 224 | if not isinstance(val, Reg): raise TypeError(f"VDSTYField requires Reg, got {type(val).__name__}") | CODE |
| LOW | tinygrad/runtime/autogen/am/__init__.py | 4 | __all__ = ["am", "pm4_soc15", "pm4_nv", "sdma_4_0_0", "sdma_5_0_0", "sdma_6_0_0", "smu_13_0_0", "smu_13_0_6", "smu_13_0_ | CODE |
| LOW | tinygrad/runtime/autogen/nv_regs/__init__.py | 11 | __all__ = ["nv_ref", *swref.keys(), *hwref.keys()] | CODE |
| LOW | extra/torch_backend/backend.py | 35 | def _update_torch_metadata(tensor: torch.Tensor, tiny: Tensor) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ternal/mlperf_bert/external_test_checkpoint_loading.py | 2 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/backend/test_linearizer.py | 303 | def helper(t, max_ops=0): | CODE |