From 08fb46f3d45e76f0005c4c1846430fe001d4bb9c Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 10 Nov 2025 16:26:45 +0000 Subject: [PATCH] python3Packages.helion: init at 0.2.1 --- .../python-modules/helion/default.nix | 84 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 86 insertions(+) create mode 100644 pkgs/development/python-modules/helion/default.nix diff --git a/pkgs/development/python-modules/helion/default.nix b/pkgs/development/python-modules/helion/default.nix new file mode 100644 index 000000000000..d54fd0b22d49 --- /dev/null +++ b/pkgs/development/python-modules/helion/default.nix @@ -0,0 +1,84 @@ +{ + lib, + config, + buildPythonPackage, + fetchFromGitHub, + + # build-system + hatch-vcs, + hatchling, + + # dependencies + filecheck, + psutil, + rich, + torch, + tqdm, + triton, + typing-extensions, + + # tests + pytestCheckHook, + writableTmpDirAsHomeHook, + helion, +}: + +buildPythonPackage rec { + pname = "helion"; + version = "0.2.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "pytorch"; + repo = "helion"; + tag = "v${version}"; + hash = "sha256-JuuVPz8FPKtaGxbJM4omUzIjY9chtGZFGXwEMX34/Y0="; + }; + + build-system = [ + hatch-vcs + hatchling + ]; + + dependencies = [ + filecheck + psutil + rich + torch + tqdm + triton + typing-extensions + ]; + + pythonImportsCheck = [ "helion" ]; + + nativeCheckInputs = [ + pytestCheckHook + writableTmpDirAsHomeHook + ]; + + disabledTests = [ + # Flaky: AssertionError: Tensor-likes are not close! + # Mismatched elements: 3 / 65536 (0.0%) + "test_squeeze_and_excitation_net_bwd_dx" + ]; + + # Tests require GPU access + doCheck = false; + passthru.gpuChecks = { + pytest = helion.overridePythonAttrs { + doCheck = true; + requiredSystemFeatures = [ "cuda" ]; + }; + }; + + meta = { + description = "Python-embedded DSL that makes it easy to write fast, scalable ML kernels with minimal boilerplate"; + homepage = "https://github.com/pytorch/helion"; + changelog = "https://github.com/pytorch/helion/releases/tag/v${version}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ GaetanLepage ]; + # This package explicitly requires CUDA-enabled pytorch + broken = !config.cudaSupport; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2ede101dea58..884a67256335 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6651,6 +6651,8 @@ self: super: with self; { hebg = callPackage ../development/python-modules/hebg { }; + helion = callPackage ../development/python-modules/helion { }; + help2man = callPackage ../development/python-modules/help2man { }; helpdev = callPackage ../development/python-modules/helpdev { };