[PATCH 0/3] Add Apache Twm and dependencies

  • Open
  • quality assurance status badge
Details
One participant
  • Andy Tai
Owner
unassigned
Submitted by
Andy Tai
Severity
normal
A
A
Andy Tai wrote on 10 Jun 2023 09:10
(address . guix-patches@gnu.org)(name . Andy Tai)(address . atai@atai.org)
cover.1686380735.git.atai@atai.org
*** BLURB HERE ***

Andy Tai (3):
gnu: Add rang
gnu: Add dmlc-dlpack
gnu: Add twm

gnu/packages/cpp.scm | 21 +++++++
gnu/packages/machine-learning.scm | 95 +++++++++++++++++++++++++++++++
2 files changed, 116 insertions(+)


base-commit: e8f9fb3e03ea8fee0e13f13706a6b16414f74a7b
--
2.40.1
A
A
Andy Tai wrote on 10 Jun 2023 09:12
[PATCH 1/3] gnu: Add rang
(address . 63991@debbugs.gnu.org)(name . Andy Tai)(address . atai@atai.org)
131e421ab2af24ac4382c8d845ca223fad9de39a.1686380735.git.atai@atai.org
* gnu/packages/cpp.scm (rang): New variable
---
gnu/packages/cpp.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 365b15a3b9..4965ae69e2 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2548,3 +2548,24 @@ (define-public ftxui
@item No dependencies.
@end itemize")
(license license:expat)))
+
+(define-public rang
+ (package
+ (name "rang")
+ (version "3.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/agauniyal/rang")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0x2fp7zjjivgxblvx1j0qphn4ln6jq42x7xr757fywm3k03y7bil"))))
+ (build-system cmake-build-system)
+ (arguments (list #:tests? #f)) ; no tests
+ (home-page "https://agauniyal.github.io/rang/")
+ (synopsis "Header only terminal c++ library")
+ (description
+ "Rang is a Minimal, Header only Modern c++ library for terminal goodies.")
+ (license license:asl2.0)))
--
2.40.1
A
A
Andy Tai wrote on 10 Jun 2023 09:12
[PATCH 2/3] gnu: Add dmlc-dlpack
(address . 63991@debbugs.gnu.org)(name . Andy Tai)(address . atai@atai.org)
33d6ff99a3580f99d25333da94140dadd291e8cb.1686380735.git.atai@atai.org
* gnu/packages/machine-learning.scm (dmlc-dlpack): New variable
---
gnu/packages/machine-learning.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index c9bc5e8b68..4ed32a8792 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -4388,3 +4388,27 @@ (define-public oneapi-dnnl
"OneAPI Deep Neural Network Library (oneDNN) is a cross-platform
performance library of basic building blocks for deep learning applications.")
(license license:asl2.0)))
+
+
+(define-public dmlc-dlpack
+ (package
+ (name "dmlc-dlpack")
+ (version "0.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dmlc/dlpack")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1jmfvdrx8dn9b0ksm04ixha0jnrk35ip796qg98kfz6g7niw5ir1"))))
+ (build-system cmake-build-system)
+ (arguments (list #:tests? #f)) ; no tests
+ (home-page "https://dmlc.github.io/dlpack/latest")
+ (synopsis "Open In Memory Tensor Structure")
+ (description
+ "DLPack is an open in-memory tensor structure for sharing tensors among frameworks")
+ (license license:asl2.0)))
+
+
--
2.40.1
A
A
Andy Tai wrote on 10 Jun 2023 09:12
[PATCH 3/3] gnu: Add twm
(address . 63991@debbugs.gnu.org)(name . Andy Tai)(address . atai@atai.org)
7b442ca1d189ba2b76f54f4e07bb8dc8e498a6ce.1686380735.git.atai@atai.org
* gnu/packages/machine-learning.scm (twm): New variable
---
gnu/packages/machine-learning.scm | 71 +++++++++++++++++++++++++++++++
1 file changed, 71 insertions(+)

Toggle diff (109 lines)
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 4ed32a8792..d6a3770228 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -80,6 +80,7 @@ (define-module (gnu packages machine-learning)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages jupyter)
+ #:use-module (gnu packages libedit)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
@@ -88,6 +89,7 @@ (define-module (gnu packages machine-learning)
#:use-module (gnu packages ninja)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages onc-rpc)
+ #:use-module (gnu packages opencl)
#:use-module (gnu packages parallel)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@@ -99,6 +101,7 @@ (define-module (gnu packages machine-learning)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages rocm)
#:use-module (gnu packages rpc)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx)
@@ -108,6 +111,7 @@ (define-module (gnu packages machine-learning)
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
#:use-module (gnu packages video)
+ #:use-module (gnu packages vulkan)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages xdisorg)
@@ -4412,3 +4416,70 @@ (define-public dmlc-dlpack
(license license:asl2.0)))
+(define-public tvm
+ (package
+ (name "tvm")
+ (version "0.12.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/apache/tvm")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0h26203sz1z7rxb12lfgzbwb9brfh61i3psjags0dqjz3wsb0s8f"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:tests? #false ; tests do not build in this release so do not build or tun them
+ ;#:test-target "test"
+ #:configure-flags #~(list "--trace"
+ "-DUSE_OPENCL=ON"
+ "-DUSE_VULKAN=ON" ;TODO; now not building due to missing vta-hw
+ "-DUSE_OPENCL_ENABLE_HOST_PTR=ON"
+ "-DINSTALL_DEV=ON"
+ ;"-DUSE_GTEST=ON" ; TODO: enable tests in future releases
+ (string-append "-DDLPACK_PATH="
+ (assoc-ref %build-inputs
+ "dmlc-dlpack")
+ "/include")
+ (string-append "-DDMLC_PATH="
+ (assoc-ref %build-inputs
+ "dmlc-core")
+ "/include")
+ (string-append "-DRANG_PATH="
+ (assoc-ref %build-inputs
+ "rang")
+ "/include"))
+ #:phases '(modify-phases %standard-phases
+ (add-after 'unpack 'enable-cpptest-build
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("set_target_properties\\(cpptest PROPERTIES EXCLUDE_FROM_ALL 1\\)")
+ "")))))))
+ (inputs (list dmlc-core
+ dmlc-dlpack
+ libedit
+ libxml2
+ opencl-clhpp
+ opencl-headers
+ rang
+ zlib
+ mesa
+ mesa-opencl
+ spirv-headers
+ spirv-tools
+ vulkan-headers ;TODO; now not building due to missing vta-hw
+ vulkan-loader))
+ (native-inputs (list googletest
+ (module-ref (resolve-interface '(gnu packages debug))
+ 'libbacktrace) python pkg-config))
+ (home-page "https://tvm.apache.org/")
+ (synopsis
+ "End to End Machine Learning Compiler Framework for CPUs, GPUs and accelerators")
+ (description
+ "Apache TVM is a compiler stack for deep learning systems. It is designed
+to close the gap between the productivity-focused deep learning frameworks,
+and the performance- and efficiency-focused hardware backends. TVM works with
+deep learning frameworks to provide end to end compilation to different backends")
+ (license license:asl2.0)))
--
2.40.1
A
A
Andy Tai wrote on 17 Jun 2023 07:45
[PATCH v2 1/3] gnu: Add rang
(address . 63991@debbugs.gnu.org)(name . Andy Tai)(address . atai@atai.org)
fcb90cbfeb603bce8f86f7cbe90fc6d4e8b1b52b.1686980668.git.atai@atai.org
* gnu/packages/cpp.scm (rang): New variable
---
gnu/packages/cpp.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 39a34c20dd..3d43a0c999 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2553,3 +2553,24 @@ (define-public ftxui
@item No dependencies.
@end itemize")
(license license:expat)))
+
+(define-public rang
+ (package
+ (name "rang")
+ (version "3.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/agauniyal/rang")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0x2fp7zjjivgxblvx1j0qphn4ln6jq42x7xr757fywm3k03y7bil"))))
+ (build-system cmake-build-system)
+ (arguments (list #:tests? #f)) ; no tests
+ (home-page "https://agauniyal.github.io/rang/")
+ (synopsis "Header only terminal c++ library")
+ (description
+ "Rang is a Minimal, Header only Modern c++ library for terminal goodies.")
+ (license license:asl2.0)))

base-commit: 998d89ba20121e87664129890a805c91061baaa7
--
2.40.1
A
A
Andy Tai wrote on 17 Jun 2023 07:45
[PATCH v2 2/3] gnu: Add dmlc-dlpack
(address . 63991@debbugs.gnu.org)(name . Andy Tai)(address . atai@atai.org)
16d1ba48cab9b74bb9a39560606409008b68d02e.1686980668.git.atai@atai.org
* gnu/packages/machine-learning.scm (dmlc-dlpack): New variable
---
gnu/packages/machine-learning.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 927b531cf2..ac115fc2ad 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -4584,3 +4584,27 @@ (define-public oneapi-dnnl
"OneAPI Deep Neural Network Library (oneDNN) is a cross-platform
performance library of basic building blocks for deep learning applications.")
(license license:asl2.0)))
+
+
+(define-public dmlc-dlpack
+ (package
+ (name "dmlc-dlpack")
+ (version "0.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dmlc/dlpack")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1jmfvdrx8dn9b0ksm04ixha0jnrk35ip796qg98kfz6g7niw5ir1"))))
+ (build-system cmake-build-system)
+ (arguments (list #:tests? #f)) ; no tests
+ (home-page "https://dmlc.github.io/dlpack/latest")
+ (synopsis "Open In Memory Tensor Structure")
+ (description
+ "DLPack is an open in-memory tensor structure for sharing tensors among frameworks")
+ (license license:asl2.0)))
+
+
--
2.40.1
A
A
Andy Tai wrote on 17 Jun 2023 07:45
[PATCH v2 3/3] gnu: Add tvm
(address . 63991@debbugs.gnu.org)(name . Andy Tai)(address . atai@atai.org)
c15ccc7c660f261f2c7771c0e96656fc7f0b19f4.1686980668.git.atai@atai.org
* gnu/packages/machine-learning.scm (tvm): New variable
---
gnu/packages/machine-learning.scm | 71 +++++++++++++++++++++++++++++++
1 file changed, 71 insertions(+)

Toggle diff (109 lines)
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index ac115fc2ad..4bc599373d 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -80,6 +80,7 @@ (define-module (gnu packages machine-learning)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages jupyter)
+ #:use-module (gnu packages libedit)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
@@ -88,6 +89,7 @@ (define-module (gnu packages machine-learning)
#:use-module (gnu packages ninja)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages onc-rpc)
+ #:use-module (gnu packages opencl)
#:use-module (gnu packages parallel)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@@ -99,6 +101,7 @@ (define-module (gnu packages machine-learning)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages rocm)
#:use-module (gnu packages rpc)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx)
@@ -108,6 +111,7 @@ (define-module (gnu packages machine-learning)
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
#:use-module (gnu packages video)
+ #:use-module (gnu packages vulkan)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages xdisorg)
@@ -4608,3 +4612,70 @@ (define-public dmlc-dlpack
(license license:asl2.0)))
+(define-public tvm
+ (package
+ (name "tvm")
+ (version "0.12.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/apache/tvm")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0h26203sz1z7rxb12lfgzbwb9brfh61i3psjags0dqjz3wsb0s8f"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:tests? #false ; tests do not build in this release so do not build or tun them
+ ;#:test-target "test"
+ #:configure-flags #~(list "--trace"
+ "-DUSE_OPENCL=ON"
+ "-DUSE_VULKAN=ON" ;TODO; now not building due to missing vta-hw
+ "-DUSE_OPENCL_ENABLE_HOST_PTR=ON"
+ "-DINSTALL_DEV=ON"
+ ;"-DUSE_GTEST=ON" ; TODO: enable tests in future releases
+ (string-append "-DDLPACK_PATH="
+ (assoc-ref %build-inputs
+ "dmlc-dlpack")
+ "/include")
+ (string-append "-DDMLC_PATH="
+ (assoc-ref %build-inputs
+ "dmlc-core")
+ "/include")
+ (string-append "-DRANG_PATH="
+ (assoc-ref %build-inputs
+ "rang")
+ "/include"))
+ #:phases '(modify-phases %standard-phases
+ (add-after 'unpack 'enable-cpptest-build
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("set_target_properties\\(cpptest PROPERTIES EXCLUDE_FROM_ALL 1\\)")
+ "")))))))
+ (inputs (list dmlc-core
+ dmlc-dlpack
+ libedit
+ libxml2
+ opencl-clhpp
+ opencl-headers
+ rang
+ zlib
+ mesa
+ mesa-opencl
+ spirv-headers
+ spirv-tools
+ vulkan-headers ;TODO; now not building due to missing vta-hw
+ vulkan-loader))
+ (native-inputs (list googletest
+ (module-ref (resolve-interface '(gnu packages debug))
+ 'libbacktrace) python pkg-config))
+ (home-page "https://tvm.apache.org/")
+ (synopsis
+ "End to End Machine Learning Compiler Framework for CPUs, GPUs and accelerators")
+ (description
+ "Apache TVM is a compiler stack for deep learning systems. It is designed
+to close the gap between the productivity-focused deep learning frameworks,
+and the performance- and efficiency-focused hardware backends. TVM works with
+deep learning frameworks to provide end to end compilation to different backends")
+ (license license:asl2.0)))
--
2.40.1
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 63991@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 63991
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch