[Mlir-commits] [mlir] 34d5072 - [MLIR][test] Check for ml_dtypes before running tests (#123061)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Wed Jan 15 08:32:42 PST 2025


Author: Konrad Kleine
Date: 2025-01-15T17:32:38+01:00
New Revision: 34d50721dbc62fc08e39ee68d12e41ccf9c88b44

URL: https://github.com/llvm/llvm-project/commit/34d50721dbc62fc08e39ee68d12e41ccf9c88b44
DIFF: https://github.com/llvm/llvm-project/commit/34d50721dbc62fc08e39ee68d12e41ccf9c88b44.diff

LOG: [MLIR][test] Check for ml_dtypes before running tests (#123061)

We noticed that `mlir/python/requirements.txt` lists `ml_dtypes` as a requirement but when looking at the code in `mlir/python`, the only `import` is guarded:

```python
try:
    import ml_dtypes
except ModuleNotFoundError:
    # The third-party ml_dtypes provides some optional low precision data-types for NumPy.
    ml_dtypes = None
```

This makes `ml_dtypes` an optional dependency.

Some python tests however partially depend on `ml_dtypes` and should not run if that module is unavailable. That is what this change does.

This is a replacement for #123051 which was excluding tests too broadly.

Added: 
    

Modified: 
    mlir/test/python/execution_engine.py

Removed: 
    


################################################################################
diff  --git a/mlir/test/python/execution_engine.py b/mlir/test/python/execution_engine.py
index 0d12c35d96bee7..e3f41815800d58 100644
--- a/mlir/test/python/execution_engine.py
+++ b/mlir/test/python/execution_engine.py
@@ -5,7 +5,14 @@
 from mlir.passmanager import *
 from mlir.execution_engine import *
 from mlir.runtime import *
-from ml_dtypes import bfloat16, float8_e5m2
+
+try:
+    from ml_dtypes import bfloat16, float8_e5m2
+
+    HAS_ML_DTYPES = True
+except ModuleNotFoundError:
+    HAS_ML_DTYPES = False
+
 
 MLIR_RUNNER_UTILS = os.getenv(
     "MLIR_RUNNER_UTILS", "../../../../lib/libmlir_runner_utils.so"
@@ -564,7 +571,8 @@ def testBF16Memref():
         log(npout)
 
 
-run(testBF16Memref)
+if HAS_ML_DTYPES:
+    run(testBF16Memref)
 
 
 # Test f8E5M2 memrefs
@@ -603,7 +611,8 @@ def testF8E5M2Memref():
         log(npout)
 
 
-run(testF8E5M2Memref)
+if HAS_ML_DTYPES:
+    run(testF8E5M2Memref)
 
 
 #  Test addition of two 2d_memref


        


More information about the Mlir-commits mailing list