1
0
Fork 0

More descriptive section titles, status updates, etc.

main
Jeff Moe 2024-02-06 11:43:32 -07:00
parent 22d12bbad6
commit a532d8b6d0
16 changed files with 183 additions and 178 deletions

View File

@ -1,6 +1,6 @@
=====
About
=====
==============
About tinyrocs
==============
tinyrocs is a small and efficient direct to chip liquid cooled GPU AI cluster.
@ -8,8 +8,6 @@ tinyrocs is a small and efficient direct to chip liquid cooled GPU AI cluster.
:alt: tinyrocs photo
:width: 60%
tinyrocs running.
Features
========
@ -34,9 +32,9 @@ Status
* Toolchain built.
* ``tinygrad`` works, running the workloads on the AMD GPUs.
* Debian Bookworm (stable/12).
* Natively built ROCm, using latest ``HEAD`` from repos (after ``6.0.0``).
* Natively built ROCm, using latest ``6.0.2`` release.
* Direct to chip liquid cooling setup, with six AMD GPUs.
* Four AMD GPUs on the PCI bus (e.g. 4/6 GPUs plugged in to motherboard).
* Five AMD GPUs on the PCI bus (e.g. 5/6 GPUs plugged in to motherboard).
* Custom built working kernel from AMD's Linux repo.

View File

@ -1,6 +1,6 @@
============
Applications
============
==========================
Free Software Applications
==========================
tinyrocs applications.

View File

@ -3,7 +3,7 @@ import sphinx.util.logging
logger = sphinx.util.logging.getLogger(__name__)
project = "tinyrocs"
project = "tinyrocs: Direct to Chip Liquid Cooled GPU AI cluster"
copyright = "2023, 2024 Jeff Moe"
author = "Jeff Moe"
version = "0"

View File

@ -1,6 +1,6 @@
========
Firmware
========
=================
Non-free Firmware
=================
Non-free, non-libre aspects noted.
All of the firmware used is non-free, proprietary software.

View File

@ -2,7 +2,7 @@
tinyrocs
========
tinyrocs is a small and efficient liquid cooled GPU AI cluster.
tinyrocs is a small and efficient direct to chip liquid cooled GPU AI cluster.
tinyrocs is currently working with AMD 7900 XTX GPUs and ``tinygrad``!

View File

@ -1,6 +1,6 @@
======
Kernel
======
============
Linux Kernel
============
tinyrocs runs a Linux kernel.

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinyrocs 0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-01-30 10:18-0700\n"
"POT-Creation-Date: 2024-02-06 11:42-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
@ -20,7 +20,7 @@ msgstr ""
"Generated-By: Babel 2.14.0\n"
#: ../../../_source/about.rst:3
msgid "About"
msgid "About tinyrocs"
msgstr ""
#: ../../../_source/about.rst:4
@ -33,154 +33,153 @@ msgstr ""
msgid "tinyrocs photo"
msgstr ""
#: ../../../_source/about.rst:11 ../../../_source/about.rst:47
msgid "tinyrocs running."
msgstr ""
#: ../../../_source/about.rst:15
#: ../../../_source/about.rst:13
msgid "Features"
msgstr ""
#: ../../../_source/about.rst:17
#: ../../../_source/about.rst:15
msgid "Multiple AMD Radeon 7900XTX GPUs, RNDA3, 24G RAM for AI compute."
msgstr ""
#: ../../../_source/about.rst:18
#: ../../../_source/about.rst:16
msgid "AMD Epyc CPUs."
msgstr ""
#: ../../../_source/about.rst:19
#: ../../../_source/about.rst:17
msgid "Direct to chip liquid cooled CPU."
msgstr ""
#: ../../../_source/about.rst:20
#: ../../../_source/about.rst:18
msgid "Direct to chip liquid cooled GPUs."
msgstr ""
#: ../../../_source/about.rst:21
#: ../../../_source/about.rst:19
msgid "PCIe 4.0 16x redrivers."
msgstr ""
#: ../../../_source/about.rst:22
#: ../../../_source/about.rst:20
msgid ""
"USA domestic 110V power (one node per 15-20A circuit). Currently using 3x "
"domestic circuits (3x 15-20A)..."
msgstr ""
#: ../../../_source/about.rst:24
#: ../../../_source/about.rst:22
msgid "ASRock ASRack ROMED8-2T motherboards with seven PCIe 4.0 16x."
msgstr ""
#: ../../../_source/about.rst:25
#: ../../../_source/about.rst:23
msgid "Mining rig chassis."
msgstr ""
#: ../../../_source/about.rst:26
#: ../../../_source/about.rst:24
msgid "Relative low cost, high performance, perhaps."
msgstr ""
#: ../../../_source/about.rst:30
#: ../../../_source/about.rst:28
msgid "Status"
msgstr ""
#: ../../../_source/about.rst:31
#: ../../../_source/about.rst:29
msgid "``It.is.alive.``"
msgstr ""
#: ../../../_source/about.rst:33
#: ../../../_source/about.rst:31
msgid "Hardware built."
msgstr ""
#: ../../../_source/about.rst:34
#: ../../../_source/about.rst:32
msgid "Toolchain built."
msgstr ""
#: ../../../_source/about.rst:35
#: ../../../_source/about.rst:33
msgid "``tinygrad`` works, running the workloads on the AMD GPUs."
msgstr ""
#: ../../../_source/about.rst:36
#: ../../../_source/about.rst:34
msgid "Debian Bookworm (stable/12)."
msgstr ""
#: ../../../_source/about.rst:37
msgid ""
"Natively built ROCm, using latest ``HEAD`` from repos (after ``6.0.0``)."
#: ../../../_source/about.rst:35
msgid "Natively built ROCm, using latest ``6.0.2`` release."
msgstr ""
#: ../../../_source/about.rst:38
#: ../../../_source/about.rst:36
msgid "Direct to chip liquid cooling setup, with six AMD GPUs."
msgstr ""
#: ../../../_source/about.rst:39
msgid "Four AMD GPUs on the PCI bus (e.g. 4/6 GPUs plugged in to motherboard)."
#: ../../../_source/about.rst:37
msgid "Five AMD GPUs on the PCI bus (e.g. 5/6 GPUs plugged in to motherboard)."
msgstr ""
#: ../../../_source/about.rst:40
#: ../../../_source/about.rst:38
msgid "Custom built working kernel from AMD's Linux repo."
msgstr ""
#: ../../../_source/about.rst:51
#: ../../../_source/about.rst:45
msgid "tinyrocs running."
msgstr ""
#: ../../../_source/about.rst:49
msgid "Links"
msgstr ""
#: ../../../_source/about.rst:52
#: ../../../_source/about.rst:50
msgid "tinyrocs main page and source code:"
msgstr ""
#: ../../../_source/about.rst:54
#: ../../../_source/about.rst:52
msgid "`<https://tinyrocs.foo>`_"
msgstr ""
#: ../../../_source/about.rst:56
#: ../../../_source/about.rst:54
msgid "`<https://spacecruft.org/deepcrayon/tinyrocs>`_"
msgstr ""
#: ../../../_source/about.rst:60
#: ../../../_source/about.rst:58
msgid "Upstream"
msgstr ""
#: ../../../_source/about.rst:61
#: ../../../_source/about.rst:59
msgid ""
"tinyrocs loosely based on tinybox, a design from tinygrad corp. The tinyrocs "
"project is independent of upstream tinygrad."
msgstr ""
#: ../../../_source/about.rst:64
#: ../../../_source/about.rst:62
msgid "`<https://tinygrad.org>`_"
msgstr ""
#: ../../../_source/about.rst:66
#: ../../../_source/about.rst:64
msgid "`<https://github.com/tinygrad/tinybox>`_"
msgstr ""
#: ../../../_source/about.rst:70
#: ../../../_source/about.rst:68
msgid "Licenses"
msgstr ""
#: ../../../_source/about.rst:71
#: ../../../_source/about.rst:69
msgid ""
"Where possible, libre licenses are used. Acceptable licenses are based on "
"the FSF's list, plus anything Wikipedia can use. In practice this means GPL-"
"type, MIT, most Creative Commons (except NC), public domain, etc. are used."
msgstr ""
#: ../../../_source/about.rst:76
#: ../../../_source/about.rst:74
msgid "Any exceptions to the above will be duly noted."
msgstr ""
#: ../../../_source/about.rst:78
#: ../../../_source/about.rst:76
msgid "Copyright (C) 2023, 2024, Jeff Moe"
msgstr ""
#: ../../../_source/about.rst:82
#: ../../../_source/about.rst:80
msgid "Author"
msgstr ""
#: ../../../_source/about.rst:83
#: ../../../_source/about.rst:81
msgid "Jeff Moe <moe@parrot.codes>"
msgstr ""
#: ../../../_source/about.rst:84
#: ../../../_source/about.rst:82
msgid "Loveland, Colorado"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinyrocs 0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 10:27-0700\n"
"POT-Creation-Date: 2024-02-06 11:38-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
@ -20,7 +20,7 @@ msgstr ""
"Generated-By: Babel 2.14.0\n"
#: ../../../_source/apps.rst:3
msgid "Applications"
msgid "Free Software Applications"
msgstr ""
#: ../../../_source/apps.rst:4

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinyrocs 0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-31 15:20-0700\n"
"POT-Creation-Date: 2024-02-06 11:38-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
@ -20,7 +20,7 @@ msgstr ""
"Generated-By: Babel 2.14.0\n"
#: ../../../_source/firmware.rst:3
msgid "Firmware"
msgid "Non-free Firmware"
msgstr ""
#: ../../../_source/firmware.rst:4
@ -76,56 +76,56 @@ msgstr ""
msgid "The non-free blobs are available from Linux's repo here:"
msgstr ""
#: ../../../_source/firmware.rst:49
#: ../../../_source/firmware.rst:50
msgid "CPU Microcode"
msgstr ""
#: ../../../_source/firmware.rst:50
#: ../../../_source/firmware.rst:51
msgid "XXX Check microcode."
msgstr ""
#: ../../../_source/firmware.rst:54
#: ../../../_source/firmware.rst:55
msgid "Motherboard BMC"
msgstr ""
#: ../../../_source/firmware.rst:55
#: ../../../_source/firmware.rst:56
msgid ""
"This binary blob is failing on ``tinyrocs-01``. It can supposedly be updated "
"from Linux or FreeDOS, but fails."
msgstr ""
#: ../../../_source/firmware.rst:60
#: ../../../_source/firmware.rst:61
msgid "Motherboard UEFI"
msgstr ""
#: ../../../_source/firmware.rst:61
#: ../../../_source/firmware.rst:62
msgid ""
"The UEFI (\"BIOS\") can be updated by copying a file to a USB drive. "
"``tinyrocs-01`` is updated to latest 3.80 (XXX check ver)."
msgstr ""
#: ../../../_source/firmware.rst:65
#: ../../../_source/firmware.rst:66
msgid "Motherboard NIC"
msgstr ""
#: ../../../_source/firmware.rst:66
#: ../../../_source/firmware.rst:67
msgid ""
"The NIC on the motherboard can be flashed. This is distinct from what gets "
"loaded by the kernel (e.g. this is flashed outside the kernel loading)."
msgstr ""
#: ../../../_source/firmware.rst:72
#: ../../../_source/firmware.rst:73
msgid "NVMe"
msgstr ""
#: ../../../_source/firmware.rst:73
#: ../../../_source/firmware.rst:74
msgid "XXX check firmware on NVMe."
msgstr ""
#: ../../../_source/firmware.rst:77
#: ../../../_source/firmware.rst:78
msgid "Unknown"
msgstr ""
#: ../../../_source/firmware.rst:78
#: ../../../_source/firmware.rst:79
msgid "This list is preliminary and not exhaustive."
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinyrocs 0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-01-30 10:17-0700\n"
"POT-Creation-Date: 2024-02-06 11:40-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
@ -28,7 +28,9 @@ msgid "tinyrocs"
msgstr ""
#: ../../../_source/index.rst:5
msgid "tinyrocs is a small and efficient liquid cooled GPU AI cluster."
msgid ""
"tinyrocs is a small and efficient direct to chip liquid cooled GPU AI "
"cluster."
msgstr ""
#: ../../../_source/index.rst:7

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinyrocs 0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-03 10:05-0700\n"
"POT-Creation-Date: 2024-02-06 11:36-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
@ -20,7 +20,7 @@ msgstr ""
"Generated-By: Babel 2.14.0\n"
#: ../../../_source/kernel.rst:3
msgid "Kernel"
msgid "Linux Kernel"
msgstr ""
#: ../../../_source/kernel.rst:4

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinyrocs 0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-03 09:14-0700\n"
"POT-Creation-Date: 2024-02-06 11:36-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
@ -20,7 +20,7 @@ msgstr ""
"Generated-By: Babel 2.14.0\n"
#: ../../../_source/os.rst:3
msgid "Operating System"
msgid "Debian Operating System"
msgstr ""
#: ../../../_source/os.rst:4

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinyrocs 0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 11:06-0700\n"
"POT-Creation-Date: 2024-02-06 11:35-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
@ -20,30 +20,32 @@ msgstr ""
"Generated-By: Babel 2.14.0\n"
#: ../../../_source/toolchain-6.0.2.rst:3
msgid "Toolchain"
msgid "ROCm Toolchain"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:4
msgid "This is a draft of rebuilding all of ROCm for the ``6.0.2`` release."
msgid ""
"HOWTO rebuld all of ROCm for the ``6.0.2`` release on Debian stable (12/"
"bookworm)."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:6
#: ../../../_source/toolchain-6.0.2.rst:7
msgid "The main GPU toolchain is built from AMD upstream ROCm sources."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:8
#: ../../../_source/toolchain-6.0.2.rst:9
msgid ""
"A build of all the sources requires building LLVM (``clang``) and the "
"various ROCm libraries and applications."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:11
#: ../../../_source/toolchain-6.0.2.rst:12
msgid ""
"There is a bit of a chicken and egg problem with getting the libraries and "
"compilers built."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:14
#: ../../../_source/toolchain-6.0.2.rst:15
msgid ""
"AMD's ROCm source repositories contain most of the toolchain software that "
"needs to be built. Note, there are many equivalent packages in Debian's main "
@ -51,105 +53,106 @@ msgid ""
"unstable sid)."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:19
#: ../../../_source/toolchain-6.0.2.rst:20
msgid ""
"The ``amdgpu`` module is in the Linux kernel source. See \"Operating "
"System\" about building that. It is not required to use this toolchain to "
"build the kernel module. The stock Debian gcc is used for the kernel module."
"The ``amdgpu`` module is in the Linux kernel source, not part of this "
"toolchain. See \"Operating System\" about building the ``amdgpu`` Linux "
"kernel module. This toolchain isn't used to build the Linux kernel module. "
"The stock Debian gcc is used for the kernel module."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:26
#: ../../../_source/toolchain-6.0.2.rst:28
msgid "Uninstall"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:27
#: ../../../_source/toolchain-6.0.2.rst:29
msgid ""
"Starting from a \"clean slate\" Perhaps blow out all the old files and start "
"from scratch..."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:39
#: ../../../_source/toolchain-6.0.2.rst:41
msgid "LLVM"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:40
#: ../../../_source/toolchain-6.0.2.rst:42
msgid ""
"First pass of LLVM build. Doesn't include \"everything\" because it needs "
"other dependencies built with itself first."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:48
#: ../../../_source/toolchain-6.0.2.rst:50
msgid "hip"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:49
#: ../../../_source/toolchain-6.0.2.rst:51
msgid ""
"This just sets up the HIP headers for clr to use later, it doesn't actually "
"build anything."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:57
#: ../../../_source/toolchain-6.0.2.rst:59
msgid "rocm-core"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:58
#: ../../../_source/toolchain-6.0.2.rst:60
msgid "Build ``rocm-core``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:65
#: ../../../_source/toolchain-6.0.2.rst:67
msgid "rocm-cmake"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:66
#: ../../../_source/toolchain-6.0.2.rst:68
msgid "Build ``rocm-cmake``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:73
#: ../../../_source/toolchain-6.0.2.rst:75
msgid "amd-smi"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:74
#: ../../../_source/toolchain-6.0.2.rst:76
msgid "Build ``amd-smi``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:81
#: ../../../_source/toolchain-6.0.2.rst:83
msgid "roct-thunk-interface"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:82
#: ../../../_source/toolchain-6.0.2.rst:84
msgid ""
"This needs a patchlet or other applications (e.g. ``rocminfo``) won't be "
"able to build. Just needs a one-liner:"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:88
#: ../../../_source/toolchain-6.0.2.rst:90
msgid "Build ``roct-thunk-interface``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:95
#: ../../../_source/toolchain-6.0.2.rst:97
msgid "device-libs"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:96
#: ../../../_source/toolchain-6.0.2.rst:98
msgid "Build ``device-libs``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:98
#: ../../../_source/toolchain-6.0.2.rst:100
msgid ""
"Using the deprecated device-libs repository, as it is what is used for "
"release ``6.0.2``. In later releases, this package is built under the ``llvm-"
"project/amd`` directory."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:107
#: ../../../_source/toolchain-6.0.2.rst:109
msgid "rocr-runtime"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:108
#: ../../../_source/toolchain-6.0.2.rst:110
msgid "Build ``rocr-runtime``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:110
#: ../../../_source/toolchain-6.0.2.rst:112
msgid ""
"This has an option for ``TARGET_DEVICES``. By default all targets are built. "
"This adds a *lot* of time to the build for devices that won't be used. But "
@ -157,84 +160,84 @@ msgid ""
"complain, so include them all for now."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:115
#: ../../../_source/toolchain-6.0.2.rst:117
msgid "List of possible targets:"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:117
#: ../../../_source/toolchain-6.0.2.rst:119
msgid ""
"``gfx700;gfx701;gfx702;gfx801;gfx802;gfx803;gfx805;gfx810;gfx900;gfx902;"
"gfx904;gfx906;gfx908;gfx909;gfx90a;gfx90c;gfx940;gfx941;gfx942;gfx1010;"
"gfx904;gfx906;gfx908;gfx909;gfx90a;gfx90c;gfx940;gfx941;gfx942; gfx1010;"
"gfx1011;gfx1012;gfx1013;gfx1030;gfx1031;gfx1032;gfx1033;gfx1034;gfx1035;"
"gfx1036;gfx1100;gfx1101;gfx1102;gfx1103``"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:119
#: ../../../_source/toolchain-6.0.2.rst:122
msgid "The AMD Radeon 7900 XTX target is ``gfx1100``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:124
#: ../../../_source/toolchain-6.0.2.rst:127
msgid ""
"For some reason, this is installing headers to ``/usr/hsa`` instead of ``/"
"opt/rocm``. It is ignoring the ``PREFIX``. Workaround..."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:129
#: ../../../_source/toolchain-6.0.2.rst:132
msgid "hipcc"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:130
#: ../../../_source/toolchain-6.0.2.rst:133
msgid "hipcc built under clr. This seems better."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:137
#: ../../../_source/toolchain-6.0.2.rst:140
msgid "rocminfo"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:138
#: ../../../_source/toolchain-6.0.2.rst:141
msgid "``rocminfo``"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:140
#: ../../../_source/toolchain-6.0.2.rst:143
msgid ""
"This ignores ``CMAKE_INSTALL_PREFIX=/opt/rocm`` and installs to ``/usr/bin`` "
"which causes other applications to fail."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:143
#: ../../../_source/toolchain-6.0.2.rst:146
msgid ""
"So cruftily add some symlinks at the end to appease these applications "
"looking in the wrong spot."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:151
#: ../../../_source/toolchain-6.0.2.rst:154
msgid "rocm-bandwidth-test"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:152
#: ../../../_source/toolchain-6.0.2.rst:155
msgid "``rocm-bandwidth-test``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:159
#: ../../../_source/toolchain-6.0.2.rst:162
msgid "comgr"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:160
#: ../../../_source/toolchain-6.0.2.rst:163
msgid "AKA ``ROCm-CompilerSupport``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:162
#: ../../../_source/toolchain-6.0.2.rst:165
msgid "Build ``comgr``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:164
#: ../../../_source/toolchain-6.0.2.rst:167
msgid ""
"This is another that in latest HEAD uses ``llvm-project/amd/`` directory, "
"but in ``6.0.2`` this isn't available. So use the ``rocm-6.0.2`` tag, like "
"the others in this build."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:168
#: ../../../_source/toolchain-6.0.2.rst:171
msgid ""
"The first time this is built, it has a non-fatal ``hip_DIR-NOTFOUND`` in "
"cmake. This is because clr needs to be built. But clr can't be build without "
@ -242,100 +245,100 @@ msgid ""
"HIP directory in the second build..."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:179
#: ../../../_source/toolchain-6.0.2.rst:182
msgid "clr"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:180
#: ../../../_source/toolchain-6.0.2.rst:183
msgid "OpenCL and more."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:182
#: ../../../_source/toolchain-6.0.2.rst:185
msgid ""
"Note HSAIL needs to be disabled or the build fails. ``-"
"DROCCLR_ENABLE_HSAIL=OFF``"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:190
#: ../../../_source/toolchain-6.0.2.rst:193
msgid "comgr Second Pass"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:191
#: ../../../_source/toolchain-6.0.2.rst:194
msgid ""
"Re-build ``comgr`` now that clr is built, so the HIP directory is found."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:193
#: ../../../_source/toolchain-6.0.2.rst:196
msgid "The build commands are the same in both builds."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:200
#: ../../../_source/toolchain-6.0.2.rst:203
msgid "rocBLAS"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:201
#: ../../../_source/toolchain-6.0.2.rst:204
msgid "rocBLAS."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:203
#: ../../../_source/toolchain-6.0.2.rst:206
msgid ""
"This builds for many targets, which takes forever (hours?), but only "
"``gfx1100`` is really needed."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:206
#: ../../../_source/toolchain-6.0.2.rst:209
msgid ""
"The cmake build scripts download Tensile from git. Not sure if it uses a "
"specific tag, or is a moving build..."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:212
#: ../../../_source/toolchain-6.0.2.rst:215
msgid "Other options, maybe:"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:223
#: ../../../_source/toolchain-6.0.2.rst:226
msgid ""
"XXX ? Fortran can't be built because flang can't be built in the LLVM build "
"first pass. If LLVM is rebuilt with flang, then maybe Fortran can be enabled."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:229
#: ../../../_source/toolchain-6.0.2.rst:232
msgid "rocprim"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:230
#: ../../../_source/toolchain-6.0.2.rst:233
msgid "``rocprim``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:237
#: ../../../_source/toolchain-6.0.2.rst:240
msgid "rocsparse"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:238
#: ../../../_source/toolchain-6.0.2.rst:241
msgid "``rocsparse``."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:245
#: ../../../_source/toolchain-6.0.2.rst:248
msgid "rocsolver"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:246
#: ../../../_source/toolchain-6.0.2.rst:249
msgid "``rocsolver`` for hipBLAS."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:253
#: ../../../_source/toolchain-6.0.2.rst:256
msgid "hipBLAS"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:254
#: ../../../_source/toolchain-6.0.2.rst:257
msgid "``hipBLAS`` plz."
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:261
#: ../../../_source/toolchain-6.0.2.rst:264
msgid "LLVM Pass Two"
msgstr ""
#: ../../../_source/toolchain-6.0.2.rst:262
#: ../../../_source/toolchain-6.0.2.rst:265
msgid ""
"XXX Skip this for now ? XXX. Needed for flang (fortran). Needed for OpenMP."
msgstr ""

View File

@ -1,6 +1,6 @@
================
Operating System
================
=======================
Debian Operating System
=======================
The tinyrocs operating system (OS) is based on Debian GNU/Linux.

View File

@ -111,49 +111,49 @@ Note, while these examples were running, builds were also running, hitting
:language: output
``python examples/compile_efficientnet.py``
----------------------------
-------------------------------------------
.. literalinclude:: _static/_output/tinygrad/compile_efficientnet.py.txt
:language: output
``python examples/compile_tensorflow.py.txt``
----------------------------
---------------------------------------------
.. literalinclude:: _static/_output/tinygrad/compile_tensorflow.py.txt
:language: output
``python examples/conversation.py``
----------------------------
-----------------------------------
.. literalinclude:: _static/_output/tinygrad/conversation.py.txt
:language: output
``python examples/efficientnet.py``
----------------------------
-----------------------------------
.. literalinclude:: _static/_output/tinygrad/efficientnet.py.txt
:language: output
``python examples/f16_w_uint32.py``
----------------------------
-----------------------------------
.. literalinclude:: _static/_output/tinygrad/f16_w_uint32.py.txt
:language: output
``python examples/gpt2.py``
----------------------------
---------------------------
.. literalinclude:: _static/_output/tinygrad/gpt2.py.txt
:language: output
``python examples/handcode_resnet50_opt.py``
----------------------------
--------------------------------------------
.. literalinclude:: _static/_output/tinygrad/handcode_resnet50_opt.py.txt
:language: output
``python examples/hlb_cifar10.py``
----------------------------
----------------------------------
.. literalinclude:: _static/_output/tinygrad/hlb_cifar10.py.txt
:language: output
@ -165,19 +165,19 @@ Note, while these examples were running, builds were also running, hitting
:language: output
``python examples/mask_rcnn.py``
----------------------------
--------------------------------
.. literalinclude:: _static/_output/tinygrad/mask_rcnn.py.txt
:language: output
``python examples/mixtral.py``
----------------------------
------------------------------
.. literalinclude:: _static/_output/tinygrad/mixtral.py.txt
:language: output
``python examples/mnist_gan.py``
----------------------------
--------------------------------
.. literalinclude:: _static/_output/tinygrad/mnist_gan.py.txt
:language: output

View File

@ -1,7 +1,8 @@
=========
Toolchain
=========
This is a draft of rebuilding all of ROCm for the ``6.0.2`` release.
==============
ROCm Toolchain
==============
HOWTO rebuld all of ROCm for the ``6.0.2`` release on
Debian stable (12/bookworm).
The main GPU toolchain is built from AMD upstream ROCm sources.
@ -16,9 +17,10 @@ that needs to be built. Note, there are many equivalent packages in
Debian's main free repository, but they are older versions than needed
(including in unstable sid).
The ``amdgpu`` module is in the Linux kernel source.
See "Operating System" about building that.
It is not required to use this toolchain to build the kernel module.
The ``amdgpu`` module is in the Linux kernel source,
not part of this toolchain.
See "Operating System" about building the ``amdgpu`` Linux kernel module.
This toolchain isn't used to build the Linux kernel module.
The stock Debian gcc is used for the kernel module.
@ -114,7 +116,8 @@ complain, so include them all for now.
List of possible targets:
``gfx700;gfx701;gfx702;gfx801;gfx802;gfx803;gfx805;gfx810;gfx900;gfx902;gfx904;gfx906;gfx908;gfx909;gfx90a;gfx90c;gfx940;gfx941;gfx942;gfx1010;gfx1011;gfx1012;gfx1013;gfx1030;gfx1031;gfx1032;gfx1033;gfx1034;gfx1035;gfx1036;gfx1100;gfx1101;gfx1102;gfx1103``
``gfx700;gfx701;gfx702;gfx801;gfx802;gfx803;gfx805;gfx810;gfx900;gfx902;gfx904;gfx906;gfx908;gfx909;gfx90a;gfx90c;gfx940;gfx941;gfx942;
gfx1010;gfx1011;gfx1012;gfx1013;gfx1030;gfx1031;gfx1032;gfx1033;gfx1034;gfx1035;gfx1036;gfx1100;gfx1101;gfx1102;gfx1103``
The AMD Radeon 7900 XTX target is ``gfx1100``.