math/dgl: New port: Deep Graph Library
This commit is contained in:
parent
85aebbb57b
commit
0779caf299
10 changed files with 261 additions and 0 deletions
|
@ -268,6 +268,7 @@
|
|||
SUBDIR += cvc5
|
||||
SUBDIR += dbcsr
|
||||
SUBDIR += deal.ii
|
||||
SUBDIR += dgl
|
||||
SUBDIR += dieharder
|
||||
SUBDIR += dihydrogen
|
||||
SUBDIR += dionysus
|
||||
|
|
67
math/dgl/Makefile
Normal file
67
math/dgl/Makefile
Normal file
|
@ -0,0 +1,67 @@
|
|||
PORTNAME= dgl
|
||||
DISTVERSION= 1.1.0
|
||||
CATEGORIES= math # machine-learning
|
||||
|
||||
MAINTAINER= yuri@FreeBSD.org
|
||||
COMMENT= Deep Graph Library
|
||||
WWW= https://www.dgl.ai/
|
||||
|
||||
LICENSE= APACHE20
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
BUILD_DEPENDS= ${BACKEND_DEPENDS} \
|
||||
bash:shells/bash \
|
||||
gmake:devel/gmake
|
||||
|
||||
USES= cmake:testing localbase:ldflags python:build shebangfix
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= dmlc
|
||||
GH_TUPLE= apache:tvm:b2e418c:tvm/third_party/tvm \
|
||||
dmlc:dlpack:e2bdd3b:dlpack/third_party/dlpack \
|
||||
dmlc:dmlc-core:bfad207:dmlc_core/third_party/dmlc-core \
|
||||
greg7mdp:parallel-hashmap:25293ce:phmap/third_party/phmap \
|
||||
herumi:xbyak:757e406:xbyak/third_party/xbyak \
|
||||
imneme:pcg-cpp:428802d:pcg/third_party/pcg \
|
||||
jlblancoc:nanoflann:4c47ca2:nanoflann/third_party/nanoflann \
|
||||
KarypisLab:METIS:1060348:metis/third_party/METIS \
|
||||
KarypisLab:GKlib:62de20c:metis_GKlib/third_party/METIS/GKlib \
|
||||
pytorch:tensorpipe:6042f1a:tensorpipe/third_party/tensorpipe \
|
||||
libuv:libuv:1dff88e:tensorpipe_libuv/third_party/tensorpipe/third_party/libuv \
|
||||
google:libnop:aa95422:tensorpipe_libnop/third_party/tensorpipe/third_party/libnop \
|
||||
hfp:libxsmm:fa68755:libxsmm/third_party/libxsmm \
|
||||
NVIDIA:thrust:6a3078c:thrust/third_party/thrust \
|
||||
google:googletest:f71fb4f:googletest/third_party/googletest
|
||||
|
||||
SHEBANG_GLOB= *.sh
|
||||
|
||||
MAKE_ENV= PYTHON=${PYTHON_CMD}
|
||||
CMAKE_ON= BUILD_SHARED_LIBS
|
||||
CMAKE_TESTING_ON= BUILD_CPP_TEST # tests fail to compile, see https://github.com/dmlc/dgl/issues/5664
|
||||
|
||||
BINARY_ALIAS= make=${GMAKE} python3=${PYTHON_CMD}
|
||||
|
||||
PLIST_FILES= lib/libdgl_metis.so # workaround for https://github.com/dmlc/dgl/issues/5666
|
||||
|
||||
OPTIONS_RADIO= BACKEND
|
||||
OPTIONS_RADIO_BACKEND= PYTORCH TENSORFLOW MXNET
|
||||
OPTIONS_DEFAULT= PYTORCH
|
||||
|
||||
PYTORCH_DESC= Use PyTorch backend
|
||||
PYTORCH_VARS= BACKEND_DEPENDS=${PYTHON_PKGNAMEPREFIX}pytorch>0:misc/py-pytorch@${PY_FLAVOR}
|
||||
PYTORCH_MAKE_ENV= DGLBACKEND=pytorch
|
||||
|
||||
TENSORFLOW_DESC= Use TensorFlow backend
|
||||
TENSORFLOW_VARS= BACKEND_DEPENDS=${PYTHON_PKGNAMEPREFIX}tensorflow>0:science/py-tensorflow@${PY_FLAVOR}
|
||||
TENSORFLOW_MAKE_ENV= DGLBACKEND=tensorflow
|
||||
TENSORFLOW_CMAKE_ON= -DBUILD_SPARSE=OFF
|
||||
|
||||
MXNET_DESC= Use MXNET backend
|
||||
MXNET_VARS= BACKEND_DEPENDS=${PYTHON_PKGNAMEPREFIX}mxnet>0:misc/py-mxnet@${PY_FLAVOR}
|
||||
MXNET_MAKE_ENV= DGLBACKEND=mxnet
|
||||
|
||||
post-install: # workaround for https://github.com/dmlc/dgl/issues/5666
|
||||
${INSTALL_LIB} ${BUILD_WRKSRC}/third_party/METIS/libmetis/libdgl_metis.so ${STAGEDIR}${PREFIX}/lib
|
||||
|
||||
.include <bsd.port.mk>
|
33
math/dgl/distinfo
Normal file
33
math/dgl/distinfo
Normal file
|
@ -0,0 +1,33 @@
|
|||
TIMESTAMP = 1683606177
|
||||
SHA256 (dmlc-dgl-1.1.0_GH0.tar.gz) = 71c8ba7777ffdca37638bc796524d42c51006fad385967fa140235b60aac0252
|
||||
SIZE (dmlc-dgl-1.1.0_GH0.tar.gz) = 5536874
|
||||
SHA256 (apache-tvm-b2e418c_GH0.tar.gz) = f351aee38d7ad4bb1025407e26d5ed21704d1daf6cb2c2b7972ec1bef11189b7
|
||||
SIZE (apache-tvm-b2e418c_GH0.tar.gz) = 4105160
|
||||
SHA256 (dmlc-dlpack-e2bdd3b_GH0.tar.gz) = e88e702277cf4cfa4814afdbb27b07b75041d80b3df60da387cdd7e0ebeb6817
|
||||
SIZE (dmlc-dlpack-e2bdd3b_GH0.tar.gz) = 76235
|
||||
SHA256 (dmlc-dmlc-core-bfad207_GH0.tar.gz) = cb9d69eef2b73349367da53f01e54f16b0b26e0f3f063360a33c6313da494fd8
|
||||
SIZE (dmlc-dmlc-core-bfad207_GH0.tar.gz) = 256022
|
||||
SHA256 (greg7mdp-parallel-hashmap-25293ce_GH0.tar.gz) = 79bf3c49d9a685615b6876cb668c678975762e72efc95ff27afeb04d08f3e4bc
|
||||
SIZE (greg7mdp-parallel-hashmap-25293ce_GH0.tar.gz) = 1991684
|
||||
SHA256 (herumi-xbyak-757e406_GH0.tar.gz) = ce13e1474237d16e4e1f66601e52db18e66f2ba98037ca800c1d9e6068d67cf6
|
||||
SIZE (herumi-xbyak-757e406_GH0.tar.gz) = 237424
|
||||
SHA256 (imneme-pcg-cpp-428802d_GH0.tar.gz) = 94cfcaace3031f42a246ef3f01b9da04bbd51baf0a749369f085e9e25e46fdbb
|
||||
SIZE (imneme-pcg-cpp-428802d_GH0.tar.gz) = 78185
|
||||
SHA256 (jlblancoc-nanoflann-4c47ca2_GH0.tar.gz) = 84523ebbca828309da8ef35544d14c810419d6a7ecc7a6e103049bc4f2900a9e
|
||||
SIZE (jlblancoc-nanoflann-4c47ca2_GH0.tar.gz) = 685221
|
||||
SHA256 (KarypisLab-METIS-1060348_GH0.tar.gz) = 3d0b2741c650c8a01019e294a12e0bc85653d251fd6956486b7fcbc90314ab1d
|
||||
SIZE (KarypisLab-METIS-1060348_GH0.tar.gz) = 4839628
|
||||
SHA256 (KarypisLab-GKlib-62de20c_GH0.tar.gz) = b10827ec6c2481aded336dd99de1d241f5c59a65e186fdc1e6d4ee57527941aa
|
||||
SIZE (KarypisLab-GKlib-62de20c_GH0.tar.gz) = 178104
|
||||
SHA256 (pytorch-tensorpipe-6042f1a_GH0.tar.gz) = b1f269a2694d85345c90acd6d22481702e3da8c3c28c0446c5c134026edf02e8
|
||||
SIZE (pytorch-tensorpipe-6042f1a_GH0.tar.gz) = 258701
|
||||
SHA256 (libuv-libuv-1dff88e_GH0.tar.gz) = 5a1e54bf17161c2e8886f584e88078318ad9c902d9b7b1d9b0f3e682f43bee48
|
||||
SIZE (libuv-libuv-1dff88e_GH0.tar.gz) = 1281275
|
||||
SHA256 (google-libnop-aa95422_GH0.tar.gz) = a1bc9d94289868a5d40e36964d57c8e06b52cb4cfff6cc21ff259337f707d0e1
|
||||
SIZE (google-libnop-aa95422_GH0.tar.gz) = 124119
|
||||
SHA256 (hfp-libxsmm-fa68755_GH0.tar.gz) = da3ebc9e628099a3bcfa2a0c6976f0cd7e8d0eba4a85b65428167e812c367986
|
||||
SIZE (hfp-libxsmm-fa68755_GH0.tar.gz) = 5259772
|
||||
SHA256 (NVIDIA-thrust-6a3078c_GH0.tar.gz) = c4d32d275c29689c2a7bf3b33dff87d533bb0a2f606256de44cc4e3780cc9130
|
||||
SIZE (NVIDIA-thrust-6a3078c_GH0.tar.gz) = 999915
|
||||
SHA256 (google-googletest-f71fb4f_GH0.tar.gz) = 196e6d0f943c2f741665e64ed500916fe6273d4f398007c95909ffe187704391
|
||||
SIZE (google-googletest-f71fb4f_GH0.tar.gz) = 957143
|
11
math/dgl/files/patch-CMakeLists.txt
Normal file
11
math/dgl/files/patch-CMakeLists.txt
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- CMakeLists.txt.orig 2023-05-09 05:00:36 UTC
|
||||
+++ CMakeLists.txt
|
||||
@@ -197,7 +197,7 @@ if(NOT MSVC)
|
||||
include_directories(${GKLIB_PATH})
|
||||
include_directories("third_party/METIS/include/")
|
||||
add_subdirectory("third_party/METIS/libmetis/")
|
||||
- list(APPEND DGL_LINKER_LIBS metis)
|
||||
+ list(APPEND DGL_LINKER_LIBS dgl_metis)
|
||||
endif(NOT MSVC)
|
||||
|
||||
# Compile LIBXSMM
|
13
math/dgl/files/patch-python_dgl_backend_____init____.py
Normal file
13
math/dgl/files/patch-python_dgl_backend_____init____.py
Normal file
|
@ -0,0 +1,13 @@
|
|||
--- python/dgl/backend/__init__.py.orig 2023-05-08 05:34:30 UTC
|
||||
+++ python/dgl/backend/__init__.py
|
||||
@@ -115,8 +115,8 @@ def get_preferred_backend():
|
||||
"Assuming PyTorch for now.",
|
||||
file=sys.stderr,
|
||||
)
|
||||
- set_default_backend(default_dir, "pytorch")
|
||||
- return "pytorch"
|
||||
+ set_default_backend(default_dir, "tensorflow")
|
||||
+ return "tensorflow"
|
||||
|
||||
|
||||
load_backend(get_preferred_backend())
|
10
math/dgl/files/patch-src_runtime_shared__mem.cc
Normal file
10
math/dgl/files/patch-src_runtime_shared__mem.cc
Normal file
|
@ -0,0 +1,10 @@
|
|||
--- src/runtime/shared_mem.cc.orig 2023-04-30 05:51:10 UTC
|
||||
+++ src/runtime/shared_mem.cc
|
||||
@@ -6,6 +6,7 @@
|
||||
#ifndef _WIN32
|
||||
#include <fcntl.h>
|
||||
#include <sys/mman.h>
|
||||
+#include <sys/stat.h>
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <dgl/runtime/shared_mem.h>
|
|
@ -0,0 +1,19 @@
|
|||
--- third_party/METIS/libmetis/CMakeLists.txt.orig 2023-05-09 05:04:07 UTC
|
||||
+++ third_party/METIS/libmetis/CMakeLists.txt
|
||||
@@ -3,13 +3,13 @@ include_directories(.)
|
||||
# Find sources.
|
||||
file(GLOB metis_sources *.c)
|
||||
# Build libmetis.
|
||||
-add_library(metis ${METIS_LIBRARY_TYPE} ${GKlib_sources} ${metis_sources})
|
||||
+add_library(dgl_metis ${METIS_LIBRARY_TYPE} ${GKlib_sources} ${metis_sources})
|
||||
if(UNIX)
|
||||
- target_link_libraries(metis m)
|
||||
+ target_link_libraries(dgl_metis m)
|
||||
endif()
|
||||
|
||||
if(METIS_INSTALL)
|
||||
- install(TARGETS metis
|
||||
+ install(TARGETS dgl_metis
|
||||
LIBRARY DESTINATION lib
|
||||
RUNTIME DESTINATION lib
|
||||
ARCHIVE DESTINATION lib)
|
|
@ -0,0 +1,41 @@
|
|||
--- third_party/tensorpipe/tensorpipe/common/system.cc.orig 2021-08-31 10:11:56 UTC
|
||||
+++ third_party/tensorpipe/tensorpipe/common/system.cc
|
||||
@@ -16,6 +16,13 @@
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
+#ifdef __FreeBSD__
|
||||
+#include <pthread.h>
|
||||
+#include <sys/stat.h>
|
||||
+#include <sys/types.h>
|
||||
+#include <unistd.h>
|
||||
+#endif
|
||||
+
|
||||
#ifdef __APPLE__
|
||||
#include <IOKit/IOKitLib.h>
|
||||
#endif
|
||||
@@ -141,8 +148,9 @@ std::string removeBlankSpaces(std::string s) {
|
||||
}
|
||||
|
||||
optional<std::string> getBootID() {
|
||||
- static optional<std::string> bootID = getBootIDInternal();
|
||||
- return bootID;
|
||||
+ //static optional<std::string> bootID = getBootIDInternal();
|
||||
+ //return bootID;
|
||||
+ throw std::runtime_error("tensorpipe lacks FreeBSD support (getBootIDInternal), see https://github.com/pytorch/tensorpipe/issues/461");
|
||||
}
|
||||
|
||||
#ifdef __APPLE__
|
||||
@@ -277,6 +285,12 @@ optional<std::string> getPermittedCapabilitiesID() {
|
||||
std::ostringstream oss;
|
||||
oss << std::hex << bitmask;
|
||||
return oss.str();
|
||||
+}
|
||||
+
|
||||
+#elif defined(__FreeBSD__)
|
||||
+
|
||||
+optional<std::string> getLinuxNamespaceId(LinuxNamespace ns) {
|
||||
+ return std::string();
|
||||
}
|
||||
|
||||
#endif
|
2
math/dgl/pkg-descr
Normal file
2
math/dgl/pkg-descr
Normal file
|
@ -0,0 +1,2 @@
|
|||
DGL is a Python package built to ease deep learning on graphs
|
||||
on top of existing DL frameworks.
|
64
math/dgl/pkg-plist
Normal file
64
math/dgl/pkg-plist
Normal file
|
@ -0,0 +1,64 @@
|
|||
include/dmlc/any.h
|
||||
include/dmlc/array_view.h
|
||||
include/dmlc/base.h
|
||||
include/dmlc/blockingconcurrentqueue.h
|
||||
include/dmlc/build_config.h
|
||||
include/dmlc/build_config_default.h
|
||||
include/dmlc/common.h
|
||||
include/dmlc/concurrency.h
|
||||
include/dmlc/concurrentqueue.h
|
||||
include/dmlc/config.h
|
||||
include/dmlc/data.h
|
||||
include/dmlc/endian.h
|
||||
include/dmlc/filesystem.h
|
||||
include/dmlc/input_split_shuffle.h
|
||||
include/dmlc/io.h
|
||||
include/dmlc/json.h
|
||||
include/dmlc/logging.h
|
||||
include/dmlc/lua.h
|
||||
include/dmlc/memory.h
|
||||
include/dmlc/memory_io.h
|
||||
include/dmlc/omp.h
|
||||
include/dmlc/optional.h
|
||||
include/dmlc/parameter.h
|
||||
include/dmlc/recordio.h
|
||||
include/dmlc/registry.h
|
||||
include/dmlc/serializer.h
|
||||
include/dmlc/strtonum.h
|
||||
include/dmlc/thread_group.h
|
||||
include/dmlc/thread_local.h
|
||||
include/dmlc/threadediter.h
|
||||
include/dmlc/timer.h
|
||||
include/dmlc/type_traits.h
|
||||
include/tensorpipe/channel/basic/factory.h
|
||||
include/tensorpipe/channel/context.h
|
||||
include/tensorpipe/channel/error.h
|
||||
include/tensorpipe/channel/mpt/factory.h
|
||||
include/tensorpipe/channel/xth/factory.h
|
||||
include/tensorpipe/common/buffer.h
|
||||
include/tensorpipe/common/cpu_buffer.h
|
||||
include/tensorpipe/common/device.h
|
||||
include/tensorpipe/common/error.h
|
||||
include/tensorpipe/common/optional.h
|
||||
include/tensorpipe/config.h
|
||||
include/tensorpipe/core/context.h
|
||||
include/tensorpipe/core/error.h
|
||||
include/tensorpipe/core/listener.h
|
||||
include/tensorpipe/core/message.h
|
||||
include/tensorpipe/core/pipe.h
|
||||
include/tensorpipe/tensorpipe.h
|
||||
include/tensorpipe/transport/context.h
|
||||
include/tensorpipe/transport/error.h
|
||||
include/tensorpipe/transport/uv/error.h
|
||||
include/tensorpipe/transport/uv/factory.h
|
||||
include/tensorpipe/transport/uv/utility.h
|
||||
lib/cmake/dmlc/DMLCTargets-%%CMAKE_BUILD_TYPE%%.cmake
|
||||
lib/cmake/dmlc/DMLCTargets.cmake
|
||||
lib/cmake/dmlc/dmlc-config-version.cmake
|
||||
lib/cmake/dmlc/dmlc-config.cmake
|
||||
lib/libdgl.so
|
||||
lib/libdmlc.so
|
||||
lib/libtensorpipe.so
|
||||
lib/libtensorpipe_uv.a
|
||||
share/cmake/Tensorpipe/TensorpipeTargets-%%CMAKE_BUILD_TYPE%%.cmake
|
||||
share/cmake/Tensorpipe/TensorpipeTargets.cmake
|
Loading…
Reference in a new issue