Skip to content

Commit 1b63379

Browse files
committed
mtensor v2.0
1 parent 08b32c9 commit 1b63379

File tree

189 files changed

+1144
-13202
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

189 files changed

+1144
-13202
lines changed

.clang-format

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,13 @@
22
# We'll use defaults from the Google style, but with 4 columns indentation.
33
BasedOnStyle: Google
44
IndentWidth: 4
5-
ColumnLimit: 120
5+
ColumnLimit: 100
66
---
7-
Language: Cpp
8-
# Force pointers to the type for C++.
9-
DerivePointerAlignment: false
10-
PointerAlignment: Left
11-
IndentWidth: 4
7+
Language: Cpp
8+
129
---
1310
Language: JavaScript
14-
# Use 100 columns for JS.
11+
1512
---
1613
Language: Proto
1714
# Don't format .proto files.

.editorconfig

Lines changed: 0 additions & 21 deletions
This file was deleted.

.gitattributes

Lines changed: 0 additions & 7 deletions
This file was deleted.

.github/ISSUE_TEMPLATE.md

Lines changed: 0 additions & 6 deletions
This file was deleted.

.gitignore

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,7 @@
3737
CMakeSettings.json
3838

3939
vs
40-
build
41-
build_android
42-
build_linux
43-
build_win
44-
build_bash
45-
build_icc
46-
build_android_icc
40+
build*
4741
tmp
4842

4943
bin
@@ -59,4 +53,4 @@ core*
5953

6054
lenna.png
6155

62-
*.raw
56+
*.raw

.gitmodules

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
[submodule "benchmark/vendor/benchmark"]
2-
path = third_party/benchmark
3-
url = https://github.com/matazure/benchmark.git
4-
[submodule "test/vendor/googletest"]
5-
path = third_party/googletest
6-
url = https://github.com/matazure/googletest.git
71
[submodule "third_party/stb"]
82
path = third_party/stb
93
url = https://github.com/nothings/stb.git

CMakeLists.txt

Lines changed: 11 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -1,117 +1,26 @@
1-
cmake_minimum_required(VERSION 3.8)
2-
#cuda need 3.8
3-
#add_link_options need 3.13
1+
cmake_minimum_required(VERSION 3.14)
42

5-
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
6-
# using Clang
7-
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
8-
# using GCC
9-
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")
10-
# using Intel C++
11-
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
12-
# using Visual Studio C++
13-
endif()
14-
15-
project(Matazure.Tensor CXX)
3+
project(MTensor CXX)
164

17-
if (NOT CXX_STANDARD)
18-
set(CXX_STANDARD 11)
19-
endif()
20-
21-
set(CMAKE_CXX_STANDARD ${CXX_STANDARD})
22-
set(CUDA_STANDARD ${CXX_STANDARD})
23-
set(CMAKE_CXX_EXTENSIONS ON)
5+
set(CXX_STANDARD 14)
246
set(CMAKE_CXX_STANDARD_REQUIRED ON)
25-
26-
if (NOT CMAKE_BUILD_TYPE)
27-
set(CMAKE_BUILD_TYPE Release)
28-
endif()
29-
307
set(CMAKE_CUDA_STANDARD ${CMAKE_CXX_STANDARD})
318
set(CMAKE_CUDA_STANDARD_REQUIRED ON)
329

33-
option(WITH_OPENCL "With OpenCL" OFF)
34-
if (WITH_OPENCL)
35-
find_package(OPENCL REQUIRED)
36-
endif()
37-
38-
option(WITH_CUDA "With CUDA" OFF)
39-
if(WITH_CUDA)
40-
if (MSVC)
41-
#use yourself nvcc version
42-
set(CMAKE_CUDA_COMPILER "C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.0/bin/nvcc.exe")
43-
endif()
10+
include(CheckLanguage)
11+
check_language(CUDA)
4412

13+
if (CMAKE_CUDA_COMPILER)
4514
enable_language(CUDA)
46-
# set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-extended-lambda --expt-relaxed-constexpr -arch=sm_75")
47-
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -w")
48-
49-
if (CUDA_ARCH)
50-
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -arch=${CUDA_ARCH}")
51-
endif()
52-
53-
endif()
54-
55-
option(WITH_OPENMP "With OpenMP" OFF)
56-
if(WITH_OPENMP)
57-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
58-
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Xcompiler \"-fopenmp\"")
59-
# need manully set link options
60-
# add_link_options($<$<COMPILE_LANGUAGE:CUDA>:-lgomp>)
61-
set(MTENSOR_CUDA_LINK_FLAGS "${LINK_FLAGS} -lgomp")
15+
set(WITH_CUDA ON)
16+
set(CMAKE_CUDA_ARCHITECTURES OFF)
17+
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-extended-lambda --expt-relaxed-constexpr")
6218
endif()
6319

64-
option(NATIVE "-march=native" OFF)
65-
if (NATIVE)
66-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
67-
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Xcompiler \"-march=native\"")
68-
endif()
69-
70-
option(BUILD_EXAMPLE "Build Example" ON)
71-
option(BUILD_TEST "Build Test" ON)
72-
option(BUILD_BENCHMARK "Build Benchmark" ON)
73-
74-
message("current compiler is ${CMAKE_CXX_COMPILER}")
75-
76-
set_property( GLOBAL PROPERTY USE_FOLDERS ON)
77-
78-
79-
if (WITH_SSE)
80-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse4.2")
81-
endif()
82-
83-
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
84-
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
85-
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
86-
87-
option(DOWNLOAD_SUBMODULES "git submodule update --init ." ON)
88-
89-
if (DOWNLOAD_SUBMODULES)
90-
execute_process(COMMAND git submodule update --init . WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
91-
endif()
92-
93-
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third_party/googletest/googletest)
94-
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/third_party/googletest/googletest/include)
95-
96-
set(BENCHMARK_ENABLE_TESTING OFF CACHE BOOL "Build gtest's sample programs." FORCE)
97-
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third_party/benchmark)
98-
9920
add_library(mtensor INTERFACE)
10021
target_include_directories(mtensor
101-
INTERFACE $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
22+
INTERFACE $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}>
10223
INTERFACE $<INSTALL_INTERFACE:include>
10324
)
10425

105-
if (BUILD_EXAMPLE)
106-
add_subdirectory(sample)
107-
endif()
108-
109-
if (BUILD_BENCHMARK)
110-
add_subdirectory(benchmark)
111-
endif()
112-
113-
if (BUILD_TEST)
114-
add_subdirectory(test)
115-
endif()
116-
117-
install(DIRECTORY include DESTINATION include)
26+
add_subdirectory(samples)

0 commit comments

Comments
 (0)