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

Add FP16 capablity #44

Merged
merged 25 commits into from
Aug 1, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
b298cfb
add initial float16 code and type system tests
marty1885 Jul 19, 2019
bfb4393
implement initial float16 support for CPU
marty1885 Jul 19, 2019
82fe5f6
Add fp16 support to OpenCLBackend
marty1885 Jul 19, 2019
f6bee25
fix g_backend_hold linking error on Linux
marty1885 Jul 19, 2019
9e4dc53
templatize dispatch()
marty1885 Jul 19, 2019
7608517
add test for result of exp()
marty1885 Jul 19, 2019
e15029f
fix wrong resulting type of uniary op on CPU
marty1885 Jul 19, 2019
65e7d9e
Enable fp16 for GPU4
marty1885 Jul 19, 2019
ff0b0ce
add half percition info to deviceInfo
marty1885 Jul 20, 2019
6b62599
add tests for uniary operation types and make backend complicant
marty1885 Jul 20, 2019
c3792bd
enable FP16 tests for supported cases
marty1885 Jul 20, 2019
fdf9ccf
add type test for sum
marty1885 Jul 20, 2019
6a72bf8
add test for binray operation result type
marty1885 Jul 20, 2019
6083d37
make OpenCLBackend binary op return correct type
marty1885 Jul 20, 2019
a08d5f6
make some type tests static
marty1885 Jul 20, 2019
077525d
serialize half
marty1885 Jul 20, 2019
5e82874
fix OpenCL sum not working with half
marty1885 Jul 21, 2019
13a2e1f
fix cast not supporting half
marty1885 Jul 21, 2019
ebead29
clean up tensor property check
marty1885 Jul 22, 2019
241bfa7
add support for some HtM algorithms in CPUBackend
marty1885 Jul 22, 2019
5eb8ee4
fix CMake warning message for newer versions
marty1885 Jul 27, 2019
a00fc14
support fp16 in HTM algorithms in CPUBackend
marty1885 Aug 1, 2019
90a2019
add property to test and implement check of tensor being one of the l…
marty1885 Aug 1, 2019
ecea051
enable HTM algorithms to run on OpenCL with half percision
marty1885 Aug 1, 2019
a50608a
fix fp16 not working on OpenCL
marty1885 Aug 1, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[submodule "Etaler/3rdparty/pcg-cpp"]
path = Etaler/3rdparty/pcg-cpp
url = https://github.com/imneme/pcg-cpp
[submodule "Etaler/3rdparty/half_precision"]
path = Etaler/3rdparty/half_precision
url = https://github.com/marty1885/half_precision
2 changes: 2 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
cmake_minimum_required(VERSION 3.0)
project(Etaler)


SET(BUILD_SHARED_LIBS ON)

Expand Down
1 change: 1 addition & 0 deletions Etaler/3rdparty/half_precision
Submodule half_precision added at 82cdf3
2 changes: 1 addition & 1 deletion Etaler/Algorithms/SpatialPooler.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ struct ETALER_EXPORT SpatialPooler
{
return to(connections_.backend());
}
protected:
//protected:
float permanence_inc_ = 0.1;
float permanence_dec_ = 0.1;
float connected_permanence_ = 0.21;
Expand Down
Loading