Skip to content

Commit

Permalink
Updates mapping between PDL and MX types
Browse files Browse the repository at this point in the history
This removes the hardcoded values and uses PDL::Type instead.

Upgrades minimum PDL dependency to PDL v2.064 which provides
int8 (PDL: sbyte) and int64 (PDL: longlong) types.

Fixes <apache#20851>.
  • Loading branch information
zmughal committed Jan 27, 2022
1 parent cd47783 commit c60f26d
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 23 deletions.
2 changes: 1 addition & 1 deletion perl-package/AI-MXNet/META.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
"Hash::Ordered" : "0.012",
"GraphViz" : "2.14",
"Mouse" : "v2.1.0",
"PDL" : "2.007",
"PDL" : "2.064",
"PDL::CCS" : "1.23.4",
"Archive::Tar": "0",
"Digest::SHA": "0",
Expand Down
2 changes: 1 addition & 1 deletion perl-package/AI-MXNet/META.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ requires:
Hash::Ordered: '0.012'
GraphViz: '2.14'
Mouse: v2.1.0
PDL: '2.007'
PDL: '2.064'
PDL::CCS: '1.23.4'
Archive::Tar: '0'
Digest::SHA: '0'
Expand Down
4 changes: 2 additions & 2 deletions perl-package/AI-MXNet/Makefile.PL
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ my %WriteMakefileArgs = (
"Function::Parameters" => "1.0705",
"Hash::Ordered" => "0.012",
"Mouse" => "v2.1.0",
"PDL" => "2.007",
"PDL" => "2.064",
"PDL::CCS" => "1.23.4",
"GraphViz" => "2.14"
},
Expand All @@ -59,7 +59,7 @@ my %FallbackPrereqs = (
"Function::Parameters" => "1.0705",
"Hash::Ordered" => "0.012",
"Mouse" => "v2.1.0",
"PDL" => "2.007",
"PDL" => "2.064",
"PDL::CCS" => "1.23.4",
"GraphViz" => "2.14"
);
Expand Down
39 changes: 20 additions & 19 deletions perl-package/AI-MXNet/lib/AI/MXNet/Base.pm
Original file line number Diff line number Diff line change
Expand Up @@ -60,27 +60,28 @@ use constant DTYPE_MX_TO_STR => {
6 => 'int64'
};
use constant DTYPE_MX_TO_PDL => {
0 => 6,
1 => 7,
2 => 6,
3 => 0,
4 => 3,
5 => 0,
6 => 5,
float32 => 6,
float64 => 7,
float16 => 6,
uint8 => 0,
int32 => 3,
int8 => 0,
int64 => 5
0 => PDL::Type->new('float')->enum,
1 => PDL::Type->new('double')->enum,
2 => PDL::Type->new('float')->enum,
3 => PDL::Type->new('byte')->enum,
4 => PDL::Type->new('long')->enum,
5 => PDL::Type->new('sbyte')->enum,
6 => PDL::Type->new('longlong')->enum,
float32 => PDL::Type->new('float')->enum,
float64 => PDL::Type->new('double')->enum,
float16 => PDL::Type->new('float')->enum,
uint8 => PDL::Type->new('byte')->enum,
int32 => PDL::Type->new('long')->enum,
int8 => PDL::Type->new('sbyte')->enum,
int64 => PDL::Type->new('longlong')->enum,
};
use constant DTYPE_PDL_TO_MX => {
6 => 0,
7 => 1,
0 => 3,
3 => 4,
5 => 6
PDL::Type->new('float')->enum => 0,
PDL::Type->new('double')->enum => 1,
PDL::Type->new('byte')->enum => 3,
PDL::Type->new('long')->enum => 4,
PDL::Type->new('sbyte')->enum => 5,
PDL::Type->new('longlong')->enum => 6,
};
use constant DTYPE_MX_TO_PERL => {
0 => 'f',
Expand Down

0 comments on commit c60f26d

Please sign in to comment.