Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for x86/ARM CPUs (e.g., Xeon, M1) #194

Open
shi27feng opened this issue Aug 8, 2021 · 6 comments
Open

Support for x86/ARM CPUs (e.g., Xeon, M1) #194

shi27feng opened this issue Aug 8, 2021 · 6 comments

Comments

@shi27feng
Copy link

Hi there,
Is there any future plan for macOS support?

❯ pip install -U --pre triton
DEPRECATION: Configuring installation scheme with distutils config files is deprecated and will no longer work in the near future. If you are using a Homebrew or Linuxbrew Python, please see discussion at https://github.com/Homebrew/homebrew-core/issues/76621
Collecting triton
  Using cached triton-0.3.0.tar.gz (920 kB)
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1c3f8cfea22149c7875f3324f27ec97a/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1c3f8cfea22149c7875f3324f27ec97a/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-ssk783vx
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1c3f8cfea22149c7875f3324f27ec97a/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1c3f8cfea22149c7875f3324f27ec97a/setup.py", line 98, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1c3f8cfea22149c7875f3324f27ec97a/setup.py", line 28, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/14/72/6ff7a1ef88fc761f6cf3f3983466ed8a9cbbbe052b7fd6c0593c46c25a15/triton-0.3.0.tar.gz#sha256=be8c934a1f0b598fae95fa3e03db2cf1063951ce53063127f987f7ed74386ee0 (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Using cached triton-0.2.3.tar.gz (943 kB)
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1b938e93795e4e98b189b6b081471031/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1b938e93795e4e98b189b6b081471031/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-cpfk7lmw
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1b938e93795e4e98b189b6b081471031/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1b938e93795e4e98b189b6b081471031/setup.py", line 97, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_1b938e93795e4e98b189b6b081471031/setup.py", line 28, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/a9/3b/7b9c8619e9eb4e0eb3cf9e01dccd1b85161f5d9e452d7fbf3aca23a62675/triton-0.2.3.tar.gz#sha256=993fc9305133070779a2da3932fc4911ab7223ac703adeebaedd546a1dd162ea (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Using cached triton-0.2.2.tar.gz (943 kB)
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ae965a15d47a484e9084077553b2f194/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ae965a15d47a484e9084077553b2f194/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-xrsd4w4v
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ae965a15d47a484e9084077553b2f194/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ae965a15d47a484e9084077553b2f194/setup.py", line 97, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ae965a15d47a484e9084077553b2f194/setup.py", line 28, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/63/93/e2644c4ea4276c76ab67209dc60085b4521e654939ccf523e01ac5bb9c7a/triton-0.2.2.tar.gz#sha256=66d5850e4565f1a6e818a7072fb1aacff03be79c4464e8ca35b7ba83b131aa4f (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Downloading triton-0.2.1.tar.gz (948 kB)
     |████████████████████████████████| 948 kB 266 kB/s
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_2fdd344579f5478d9bda1e28dc9fa6d7/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_2fdd344579f5478d9bda1e28dc9fa6d7/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-vv8ayaji
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_2fdd344579f5478d9bda1e28dc9fa6d7/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_2fdd344579f5478d9bda1e28dc9fa6d7/setup.py", line 92, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_2fdd344579f5478d9bda1e28dc9fa6d7/setup.py", line 26, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/27/d2/adc02ff11f58199fc3b0f75623a9e8244060339432adf40332c22b59a483/triton-0.2.1.tar.gz#sha256=d512855964f4d1e004370efbe9e1d2bb215fdd1b1f91a02d5e8ae1965c671b2e (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Downloading triton-0.2.0.tar.gz (949 kB)
     |████████████████████████████████| 949 kB 591 kB/s
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a0cd723a37ec4c1f979ccf24940e2b0f/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a0cd723a37ec4c1f979ccf24940e2b0f/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-fevalx2x
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a0cd723a37ec4c1f979ccf24940e2b0f/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a0cd723a37ec4c1f979ccf24940e2b0f/setup.py", line 92, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a0cd723a37ec4c1f979ccf24940e2b0f/setup.py", line 26, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/2e/e6/70bdacf41f11d19f4f091e57ae878096e294afa2018336bc96a804876777/triton-0.2.0.tar.gz#sha256=4edbccf981d412943bd3252d530bddfa3f0a1f1487d765c8b924b9c79b2495fd (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Downloading triton-0.1.3.tar.gz (948 kB)
     |████████████████████████████████| 948 kB 602 kB/s
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_d4b20728c4ac4a668b20330c566dd112/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_d4b20728c4ac4a668b20330c566dd112/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-bzvbuucl
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_d4b20728c4ac4a668b20330c566dd112/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_d4b20728c4ac4a668b20330c566dd112/setup.py", line 92, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_d4b20728c4ac4a668b20330c566dd112/setup.py", line 26, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/3a/ce/4b6e908da32b3445a7ad075a89fe2109b1c1ee9d866c66f5396a587ab53e/triton-0.1.3.tar.gz#sha256=70754cdecbe86769ca2fcbad5be87f4ba9fc98d3f4fc80b7585f71ffee306c57 (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Downloading triton-0.1.2.tar.gz (947 kB)
     |████████████████████████████████| 947 kB 605 kB/s
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ee526d094e0e4950940aeda3ece87692/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ee526d094e0e4950940aeda3ece87692/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-n6db4utl
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ee526d094e0e4950940aeda3ece87692/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ee526d094e0e4950940aeda3ece87692/setup.py", line 92, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_ee526d094e0e4950940aeda3ece87692/setup.py", line 26, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/44/02/b33b008a3d07f36bb4f1dbcf4817aaddc877600b0db89db84d60617645a6/triton-0.1.2.tar.gz#sha256=7457507df7376eaea2e3b8182ea96b965e65abe646a1ffa2cf0a25f923a70e36 (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Downloading triton-0.1.1.tar.gz (938 kB)
     |████████████████████████████████| 938 kB 576 kB/s
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a092afd778b2405ea050dc15fafcfb6e/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a092afd778b2405ea050dc15fafcfb6e/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-gnrnehhg
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a092afd778b2405ea050dc15fafcfb6e/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a092afd778b2405ea050dc15fafcfb6e/setup.py", line 92, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a092afd778b2405ea050dc15fafcfb6e/setup.py", line 26, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/d9/30/fc6aeaa1553043b2069f9d19521226b0777d07ae34dafe0f3fe3e97ff5bf/triton-0.1.1.tar.gz#sha256=b1dfec3aae7d55deee64236c0c986aed6f1c18fc2a3d6d0e3d0da0db6dedf400 (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Downloading triton-0.1.tar.gz (939 kB)
     |████████████████████████████████| 939 kB 595 kB/s
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a20389071c0e42bb99e61ca6870b93ba/setup.py'"'"'; __file__='"'"'/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a20389071c0e42bb99e61ca6870b93ba/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-pip-egg-info-rbmjzvmg
         cwd: /private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a20389071c0e42bb99e61ca6870b93ba/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a20389071c0e42bb99e61ca6870b93ba/setup.py", line 92, in <module>
        find_llvm()
      File "/private/var/folders/tt/91bzn3d16jlfbx2rkrgd1mkm0000gn/T/pip-install-tw4r6_zn/triton_a20389071c0e42bb99e61ca6870b93ba/setup.py", line 26, in find_llvm
        raise RuntimeError('Could not find llvm-config. ' + instructions)
    RuntimeError: Could not find llvm-config. Please install llvm-{8, 9, 10}-dev
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/4f/63/81f5143ab109d78391425172b1ebf4cd3bedccedd606a02b3d2dfc3967af/triton-0.1.tar.gz#sha256=e99fc5ed1a7bf0c01376b495fa9963a667282bfa46193a28854f316716093cef (from https://pypi.org/simple/triton/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
ERROR: Could not find a version that satisfies the requirement triton (from versions: 0.1, 0.1.1, 0.1.2, 0.1.3, 0.2.0, 0.2.1, 0.2.2, 0.2.3, 0.3.0)
ERROR: No matching distribution found for triton
@ptillet
Copy link
Collaborator

ptillet commented Aug 9, 2021

Hi! There is no plan for M1 support at the time. This will probably be trivial to add when CPU support is done -- but even that isn't a big priority and it wouldn't address the GPU either. If Apple had an LLVM target for their GPU, adding support would be pretty easy, but it seems like as things stand the only way to program it is with Metal.

@shi27feng
Copy link
Author

shi27feng commented Aug 10, 2021

@ptillet It's ok with the CPU version for M1, there's an Apple Matrix coprocessor (AMX) inside the M1 chip (an interesting article), the vector/matrix computations are all delivered automatically (maybe secretly) to AMX. According to my experience, Apple's CPU core is much faster than my old desktop GPU (GeForce RTX 2070 8GB) in machine learning training tasks with small datasets (less than 1GB, e.g., sparse data, graph data, small image datasets), this is done without any help of GPUs or Neural Engine inside M1.

@ptillet ptillet changed the title Support for macOS, especially Apple Silicon M1/M1X/M2 Support for x86/ARM CPUs (e.g., Xeon, M1) Aug 30, 2021
@ogrisel
Copy link

ogrisel commented Mar 23, 2023

Out of curiosity, I built titron from source using the llvm compilers installed in a conda-forge environment on a macOS/M1 laptop (conda install -c conda-forge compilers) and it builds successfully. However when I try to use it I get:

$ python tutorials/01-vector-add.py
Traceback (most recent call last):
  File "/Users/ogrisel/code/triton/python/tutorials/01-vector-add.py", line 17, in <module>
    import triton
  File "/Users/ogrisel/code/triton/python/triton/__init__.py", line 10, in <module>
    from .runtime import Config, autotune, heuristics, JITFunction, KernelInterface
  File "/Users/ogrisel/code/triton/python/triton/runtime/__init__.py", line 1, in <module>
    from .autotuner import Config, Heuristics, autotune, heuristics  # noqa: F401
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/ogrisel/code/triton/python/triton/runtime/autotuner.py", line 7, in <module>
    from ..testing import do_bench
  File "/Users/ogrisel/code/triton/python/triton/testing.py", line 9, in <module>
    import triton._C.libtriton.triton as _triton
ImportError: dlopen(/Users/ogrisel/code/triton/python/triton/_C/libtriton.so, 0x0002): symbol not found in flat namespace '__ZN4llvm24DisableABIBreakingChecksE'

@ogrisel
Copy link

ogrisel commented Mar 23, 2023

Note that even a generic CPU / openmp backend (without architecture specific optimizations) would be useful as a fallback mechanisms for libraries that would like to use triton without introducing a hard dependency to a GPU runtime.

This would also help to make it possible to use free CI services to run the test suite for the kernels on CPU for cheap in individual pull requests and then couple that with an on-demand, more expensive CI worker with a GPU.

binarman pushed a commit to B1tway/triton that referenced this issue Apr 24, 2023
[ROCM] Use `llvm::dbgs()` and `llvm::errs()` streams instead of `std::cout`.
@cooolinx
Copy link

cooolinx commented May 9, 2023

Any plan for M1/M1X? It's 2023 now

@ptillet
Copy link
Collaborator

ptillet commented May 10, 2023

No plan for CPU support, but you can use the interpret=True mode to write kernel if you don't have a GPU. It'll be very slow though

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants