From 0546f58ba50c15c8ada2728f5bae5bf181f59581 Mon Sep 17 00:00:00 2001 From: Nishant Kumar <t-niskum@microsoft.com> Date: Thu, 19 Sep 2019 00:20:09 +0530 Subject: [PATCH] Updated license in all files of Athos. --- Athos/Networks/ChestXRay/ChestXRay_tf_main.py | 24 +++++++++++++ .../ChestXRay/SetupPretrainedTFModel.sh | 20 +++++++++++ .../DenseNet64_acc_test.cpp | 26 ++++++++++++++ .../DenseNet_main_float_acc.py | 24 +++++++++++++ .../PreProcess_ImageNet.sh | 20 +++++++++++ .../RunInference_ImageNet.sh | 20 +++++++++++ .../AccuracyAnalysisHelper/helper_temp.sh | 20 +++++++++++ Athos/Networks/DenseNet/DenseNet_main.py | 24 +++++++++++++ .../DenseNet_main_64_cpp_maxmintest.cpp | 26 ++++++++++++++ .../DenseNet_preprocess_main.py | 26 ++++++++++++++ .../LogisticRegressionInfer.py | 26 ++++++++++++++ .../Networks/OtherBenchmarks/MiniONN_CIFAR.py | 24 +++++++++++++ .../PreProcess_ImageNet.sh | 20 +++++++++++ .../ResNet_main_float_acc.py | 24 +++++++++++++ .../Resnet64_acc_test.cpp | 26 ++++++++++++++ .../RunInference_ImageNet.sh | 20 +++++++++++ .../ResNet_preprocess_main.py | 35 +++++++++++++++++++ Athos/Networks/ResNet/ResNet_main.py | 27 ++++++++++++++ .../ResNet/ResNet_main_64_cpp_maxmintest.cpp | 26 ++++++++++++++ Athos/Networks/SecureNNBenchmarks/NetworkA.py | 24 +++++++++++++ Athos/Networks/SecureNNBenchmarks/NetworkB.py | 24 +++++++++++++ Athos/Networks/SecureNNBenchmarks/NetworkC.py | 24 +++++++++++++ Athos/Networks/SecureNNBenchmarks/NetworkD.py | 24 +++++++++++++ Athos/Networks/SqueezeNetCIFAR10/README.md | 2 +- .../SqueezeNetCIFAR10/Squeezenet_model.py | 29 +++++++++++++++ Athos/Networks/SqueezeNetCIFAR10/Util.py | 29 +++++++++++++++ .../PreProcess_ImageNet.sh | 20 +++++++++++ .../RunInference_ImageNet.sh | 20 +++++++++++ .../SqueezeNet_main_float_acc.py | 24 +++++++++++++ .../squeezenet64_acc_test.cpp | 26 ++++++++++++++ .../SqNetImgNet_preprocess_main.py | 28 +++++++++++++++ .../squeezenet_main_64_cpp_maxmintest.cpp | 2 ++ Athos/SeeDot/AST/AST.py | 24 +++++++++++++ Athos/SeeDot/AST/ASTVisitor.py | 24 +++++++++++++ Athos/SeeDot/AST/MtdAST.py | 24 +++++++++++++ Athos/SeeDot/AST/PrintAST.py | 24 +++++++++++++ Athos/SeeDot/Codegen/CodegenBase.py | 24 +++++++++++++ Athos/SeeDot/Codegen/EzPC.py | 24 +++++++++++++ Athos/SeeDot/Compiler.py | 24 +++++++++++++ Athos/SeeDot/IR/IR.py | 24 +++++++++++++ Athos/SeeDot/IR/IRBuilderCSF.py | 24 +++++++++++++ Athos/SeeDot/IR/IRUtil.py | 24 +++++++++++++ Athos/SeeDot/Optimizations/LivenessOpti.py | 24 +++++++++++++ Athos/SeeDot/Optimizations/ReluMaxpoolOpti.py | 24 +++++++++++++ Athos/SeeDot/SeeDot.py | 24 +++++++++++++ Athos/SeeDot/Type.py | 24 +++++++++++++ Athos/SeeDot/Util.py | 24 +++++++++++++ Athos/SeeDot/Writer.py | 24 +++++++++++++ Athos/TFCompiler/Graph.py | 2 ++ 49 files changed, 1119 insertions(+), 1 deletion(-) diff --git a/Athos/Networks/ChestXRay/ChestXRay_tf_main.py b/Athos/Networks/ChestXRay/ChestXRay_tf_main.py index 65e8b8a..9e2172a 100644 --- a/Athos/Networks/ChestXRay/ChestXRay_tf_main.py +++ b/Athos/Networks/ChestXRay/ChestXRay_tf_main.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import cv2, numpy, sys, os, argparse, time import tensorflow as tf sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'TFCompiler')) diff --git a/Athos/Networks/ChestXRay/SetupPretrainedTFModel.sh b/Athos/Networks/ChestXRay/SetupPretrainedTFModel.sh index c708d30..33433ac 100644 --- a/Athos/Networks/ChestXRay/SetupPretrainedTFModel.sh +++ b/Athos/Networks/ChestXRay/SetupPretrainedTFModel.sh @@ -1,3 +1,23 @@ +# Authors: Nishant Kumar. + +# Copyright: +# Copyright (c) 2018 Microsoft Research +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + #!/bin/bash kerasModelLink="https://chestxray.blob.core.windows.net/chestxraytutorial/tutorial_xray/chexray_14_weights_712split_epoch_054_val_loss_191.2588.hdf5" diff --git a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/DenseNet64_acc_test.cpp b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/DenseNet64_acc_test.cpp index 21749cc..d9ab833 100644 --- a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/DenseNet64_acc_test.cpp +++ b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/DenseNet64_acc_test.cpp @@ -1,3 +1,29 @@ +/* + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +This code was auto-generated by Athos and then hand-modified by the author. + +*/ + #include<vector> #include<math.h> #include<cstdlib> diff --git a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/DenseNet_main_float_acc.py b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/DenseNet_main_float_acc.py index 4d14df5..b863e81 100644 --- a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/DenseNet_main_float_acc.py +++ b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/DenseNet_main_float_acc.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import numpy import argparse import os, sys, time diff --git a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh index d731751..d4cdfdd 100644 --- a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh +++ b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh @@ -1,3 +1,23 @@ +# Authors: Nishant Kumar. + +# Copyright: +# Copyright (c) 2018 Microsoft Research +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + #!/bin/bash NUMIMAGES=1000 diff --git a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh index b6ac5fe..449654b 100644 --- a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh +++ b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh @@ -1,3 +1,23 @@ +# Authors: Nishant Kumar. + +# Copyright: +# Copyright (c) 2018 Microsoft Research +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + #!/bin/bash NUMIMAGES=50000 diff --git a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/helper_temp.sh b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/helper_temp.sh index a389141..3fc19f1 100644 --- a/Athos/Networks/DenseNet/AccuracyAnalysisHelper/helper_temp.sh +++ b/Athos/Networks/DenseNet/AccuracyAnalysisHelper/helper_temp.sh @@ -1,3 +1,23 @@ +# Authors: Nishant Kumar. + +# Copyright: +# Copyright (c) 2018 Microsoft Research +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + #!/bin/bash TOTALIMG=50000 diff --git a/Athos/Networks/DenseNet/DenseNet_main.py b/Athos/Networks/DenseNet/DenseNet_main.py index 72fe85d..32f6c1f 100644 --- a/Athos/Networks/DenseNet/DenseNet_main.py +++ b/Athos/Networks/DenseNet/DenseNet_main.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import numpy import argparse import os, sys, time diff --git a/Athos/Networks/DenseNet/DenseNet_main_64_cpp_maxmintest.cpp b/Athos/Networks/DenseNet/DenseNet_main_64_cpp_maxmintest.cpp index 9191d46..a3310b6 100644 --- a/Athos/Networks/DenseNet/DenseNet_main_64_cpp_maxmintest.cpp +++ b/Athos/Networks/DenseNet/DenseNet_main_64_cpp_maxmintest.cpp @@ -1,3 +1,29 @@ +/* + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Code auto-generated by Athos and then hand-modified by the author. + +*/ + #include<vector> #include<math.h> #include<cstdlib> diff --git a/Athos/Networks/DenseNet/PreProcessingImages/DenseNet_preprocess_main.py b/Athos/Networks/DenseNet/PreProcessingImages/DenseNet_preprocess_main.py index 4ce0767..9753289 100644 --- a/Athos/Networks/DenseNet/PreProcessingImages/DenseNet_preprocess_main.py +++ b/Athos/Networks/DenseNet/PreProcessingImages/DenseNet_preprocess_main.py @@ -1,3 +1,29 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Part of the code in this file is taken from https://github.com/pudae/tensorflow-densenet. + +''' + import os, sys, numpy import _pickle as pickle import tensorflow as tf diff --git a/Athos/Networks/LogisticRegression/LogisticRegressionInfer.py b/Athos/Networks/LogisticRegression/LogisticRegressionInfer.py index 3861f78..aa2ceaa 100644 --- a/Athos/Networks/LogisticRegression/LogisticRegressionInfer.py +++ b/Athos/Networks/LogisticRegression/LogisticRegressionInfer.py @@ -1,3 +1,29 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Parts of the code in this file is taken from https://github.com/aymericdamien/TensorFlow-Examples/. + +''' + from __future__ import print_function import os, sys import time diff --git a/Athos/Networks/OtherBenchmarks/MiniONN_CIFAR.py b/Athos/Networks/OtherBenchmarks/MiniONN_CIFAR.py index 8a28ed2..af61158 100644 --- a/Athos/Networks/OtherBenchmarks/MiniONN_CIFAR.py +++ b/Athos/Networks/OtherBenchmarks/MiniONN_CIFAR.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + # # This is a NN over the CIFAR-10 dataset, used in the MiniONN paper. # Its taken from figure 13 of MiniONN paper [https://eprint.iacr.org/2017/452.pdf]. diff --git a/Athos/Networks/ResNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh b/Athos/Networks/ResNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh index 96e02e9..908feae 100644 --- a/Athos/Networks/ResNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh +++ b/Athos/Networks/ResNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh @@ -1,3 +1,23 @@ +# Authors: Nishant Kumar. + +# Copyright: +# Copyright (c) 2018 Microsoft Research +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + #!/bin/bash NUMIMAGES=50000 diff --git a/Athos/Networks/ResNet/AccuracyAnalysisHelper/ResNet_main_float_acc.py b/Athos/Networks/ResNet/AccuracyAnalysisHelper/ResNet_main_float_acc.py index 85b97e9..e8e67af 100644 --- a/Athos/Networks/ResNet/AccuracyAnalysisHelper/ResNet_main_float_acc.py +++ b/Athos/Networks/ResNet/AccuracyAnalysisHelper/ResNet_main_float_acc.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import numpy import argparse import os, sys, time diff --git a/Athos/Networks/ResNet/AccuracyAnalysisHelper/Resnet64_acc_test.cpp b/Athos/Networks/ResNet/AccuracyAnalysisHelper/Resnet64_acc_test.cpp index 0b16763..52d0f0b 100644 --- a/Athos/Networks/ResNet/AccuracyAnalysisHelper/Resnet64_acc_test.cpp +++ b/Athos/Networks/ResNet/AccuracyAnalysisHelper/Resnet64_acc_test.cpp @@ -1,3 +1,29 @@ +/* + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Code auto-generated by Athos and then hand-modified by author. + +*/ + #include<vector> #include<math.h> #include<cstdlib> diff --git a/Athos/Networks/ResNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh b/Athos/Networks/ResNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh index fde50da..9a68333 100644 --- a/Athos/Networks/ResNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh +++ b/Athos/Networks/ResNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh @@ -1,3 +1,23 @@ +# Authors: Nishant Kumar. + +# Copyright: +# Copyright (c) 2018 Microsoft Research +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + #!/bin/bash NUMIMAGES=50000 diff --git a/Athos/Networks/ResNet/PreProcessingImages/ResNet_preprocess_main.py b/Athos/Networks/ResNet/PreProcessingImages/ResNet_preprocess_main.py index bae02b4..94ffe69 100644 --- a/Athos/Networks/ResNet/PreProcessingImages/ResNet_preprocess_main.py +++ b/Athos/Networks/ResNet/PreProcessingImages/ResNet_preprocess_main.py @@ -1,3 +1,38 @@ +# Copyright 2016 The TensorFlow Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Provides utilities to preprocess images. + +Training images are sampled using the provided bounding boxes, and subsequently +cropped to the sampled bounding box. Images are additionally flipped randomly, +then resized to the target output size (without aspect-ratio preservation). + +Images used during evaluation are resized (with aspect-ratio preservation) and +centrally cropped. + +All images undergo mean color subtraction. + +Note that these steps are colloquially referred to as "ResNet preprocessing," +and they differ from "VGG preprocessing," which does not use bounding boxes +and instead does an aspect-preserving resize followed by random crop during +training. (These both differ from "Inception preprocessing," which introduces +color distortion steps.) + +** Code modified for CrypTFlow ** + +""" + import os, sys import numpy import random diff --git a/Athos/Networks/ResNet/ResNet_main.py b/Athos/Networks/ResNet/ResNet_main.py index b4a1721..a576005 100644 --- a/Athos/Networks/ResNet/ResNet_main.py +++ b/Athos/Networks/ResNet/ResNet_main.py @@ -1,3 +1,30 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Parts of the code in this file was taken from the original model from +https://github.com/tensorflow/models/tree/master/official/r1/resnet. + +''' + import os, sys import time import numpy diff --git a/Athos/Networks/ResNet/ResNet_main_64_cpp_maxmintest.cpp b/Athos/Networks/ResNet/ResNet_main_64_cpp_maxmintest.cpp index 4a6d13e..8938dbe 100644 --- a/Athos/Networks/ResNet/ResNet_main_64_cpp_maxmintest.cpp +++ b/Athos/Networks/ResNet/ResNet_main_64_cpp_maxmintest.cpp @@ -1,3 +1,29 @@ +/* + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Code auto-generated by Athos and hand-modified by author. + +*/ + #include<vector> #include<math.h> #include<cstdlib> diff --git a/Athos/Networks/SecureNNBenchmarks/NetworkA.py b/Athos/Networks/SecureNNBenchmarks/NetworkA.py index 40b5298..6cd75be 100644 --- a/Athos/Networks/SecureNNBenchmarks/NetworkA.py +++ b/Athos/Networks/SecureNNBenchmarks/NetworkA.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + # # This is the network A from SecureNN written in Tensorflow. # Also, first presented in SecureML [https://eprint.iacr.org/2017/396.pdf]. diff --git a/Athos/Networks/SecureNNBenchmarks/NetworkB.py b/Athos/Networks/SecureNNBenchmarks/NetworkB.py index b3e2050..b199e3d 100644 --- a/Athos/Networks/SecureNNBenchmarks/NetworkB.py +++ b/Athos/Networks/SecureNNBenchmarks/NetworkB.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + # # This is the network B from SecureNN written in Tensorflow. # The network description is taken from fig 12 of MiniONN paper [https://eprint.iacr.org/2017/452.pdf]. diff --git a/Athos/Networks/SecureNNBenchmarks/NetworkC.py b/Athos/Networks/SecureNNBenchmarks/NetworkC.py index 4dc745d..78fcb82 100644 --- a/Athos/Networks/SecureNNBenchmarks/NetworkC.py +++ b/Athos/Networks/SecureNNBenchmarks/NetworkC.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + # # This is the network C from SecureNN written in Tensorflow. # The network description is taken from the public implementation of SecureNN. diff --git a/Athos/Networks/SecureNNBenchmarks/NetworkD.py b/Athos/Networks/SecureNNBenchmarks/NetworkD.py index ee6d2a2..89194cf 100644 --- a/Athos/Networks/SecureNNBenchmarks/NetworkD.py +++ b/Athos/Networks/SecureNNBenchmarks/NetworkD.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + # # This is the network D from SecureNN written in Tensorflow. # The network description is taken from fig 3 of Chameleon paper [https://eprint.iacr.org/2017/1164.pdf]. diff --git a/Athos/Networks/SqueezeNetCIFAR10/README.md b/Athos/Networks/SqueezeNetCIFAR10/README.md index e1f2714..2181b60 100644 --- a/Athos/Networks/SqueezeNetCIFAR10/README.md +++ b/Athos/Networks/SqueezeNetCIFAR10/README.md @@ -1,4 +1,4 @@ -This folder contains code for the SqueezeNet network on the CIFAR10 dataset. Original source code is taken from [this](https://github.com/kaizouman/tensorsandbox/tree/master/cifar10/models/squeeze) github repo and modified slightly for our purposes. +This folder contains code for the SqueezeNet network on the CIFAR10 dataset. Original source code of model is taken from [this](https://github.com/kaizouman/tensorsandbox/tree/master/cifar10/models/squeeze) github repo. For preprocessing the code is based on [this github repo](https://github.com/deep-diver/CIFAR10-img-classification-tensorflow). Both the model and preprocessing code were further modified for our purposes. ## Setup - Setup CIFAR10 dataset first using the following command: `cd ../../HelperScripts && ./SetupCIFAR10.sh && cd -`. This sets up the CIFAR10 dataset in this folder:`../../HelperScripts/CIFAR10/`. diff --git a/Athos/Networks/SqueezeNetCIFAR10/Squeezenet_model.py b/Athos/Networks/SqueezeNetCIFAR10/Squeezenet_model.py index f68079e..9d5a03b 100644 --- a/Athos/Networks/SqueezeNetCIFAR10/Squeezenet_model.py +++ b/Athos/Networks/SqueezeNetCIFAR10/Squeezenet_model.py @@ -1,3 +1,32 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +** +Parts of this code including the model itself, the training code and some other parts +were taken from https://github.com/kaizouman/tensorsandbox/tree/master/cifar10/models/squeeze +** + +''' + from __future__ import absolute_import from __future__ import division from __future__ import print_function diff --git a/Athos/Networks/SqueezeNetCIFAR10/Util.py b/Athos/Networks/SqueezeNetCIFAR10/Util.py index 1f7de8c..be1f66f 100644 --- a/Athos/Networks/SqueezeNetCIFAR10/Util.py +++ b/Athos/Networks/SqueezeNetCIFAR10/Util.py @@ -1,3 +1,32 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +** +Original code from https://github.com/deep-diver/CIFAR10-img-classification-tensorflow +Modified for our purposes. +** + +''' + import os, sys import pickle import random diff --git a/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh b/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh index 8f6b727..e2f3898 100644 --- a/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh +++ b/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/PreProcess_ImageNet.sh @@ -1,3 +1,23 @@ +# Authors: Nishant Kumar. + +# Copyright: +# Copyright (c) 2018 Microsoft Research +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + #!/bin/bash NUMIMAGES=1000 diff --git a/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh b/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh index f33d071..4ea83b4 100644 --- a/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh +++ b/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/RunInference_ImageNet.sh @@ -1,3 +1,23 @@ +# Authors: Nishant Kumar. + +# Copyright: +# Copyright (c) 2018 Microsoft Research +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + #!/bin/bash NUMIMAGES=1000 diff --git a/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/SqueezeNet_main_float_acc.py b/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/SqueezeNet_main_float_acc.py index 35e7d29..977c67a 100644 --- a/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/SqueezeNet_main_float_acc.py +++ b/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/SqueezeNet_main_float_acc.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import numpy import argparse import os, sys, time diff --git a/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/squeezenet64_acc_test.cpp b/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/squeezenet64_acc_test.cpp index 4d52efc..b487ecd 100644 --- a/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/squeezenet64_acc_test.cpp +++ b/Athos/Networks/SqueezeNetImgNet/AccuracyAnalysisHelper/squeezenet64_acc_test.cpp @@ -1,3 +1,29 @@ +/* + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Code auto-generated by Athos and then hand-modified by author. + +*/ + #include<vector> #include<math.h> #include<cstdlib> diff --git a/Athos/Networks/SqueezeNetImgNet/PreProcessingImages/SqNetImgNet_preprocess_main.py b/Athos/Networks/SqueezeNetImgNet/PreProcessingImages/SqNetImgNet_preprocess_main.py index 3715904..a6c2a26 100644 --- a/Athos/Networks/SqueezeNetImgNet/PreProcessingImages/SqNetImgNet_preprocess_main.py +++ b/Athos/Networks/SqueezeNetImgNet/PreProcessingImages/SqNetImgNet_preprocess_main.py @@ -1,3 +1,31 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +** +Parts of this code were used from https://github.com/avoroshilov/tf-squeezenet. +** + +''' + import os, sys import numpy as np import scipy.io diff --git a/Athos/Networks/SqueezeNetImgNet/squeezenet_main_64_cpp_maxmintest.cpp b/Athos/Networks/SqueezeNetImgNet/squeezenet_main_64_cpp_maxmintest.cpp index 11b3818..8d4ffda 100644 --- a/Athos/Networks/SqueezeNetImgNet/squeezenet_main_64_cpp_maxmintest.cpp +++ b/Athos/Networks/SqueezeNetImgNet/squeezenet_main_64_cpp_maxmintest.cpp @@ -20,6 +20,8 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Code auto-generated by Athos and hand-modified by the author. + */ #include<vector> diff --git a/Athos/SeeDot/AST/AST.py b/Athos/SeeDot/AST/AST.py index 381f961..5e16972 100644 --- a/Athos/SeeDot/AST/AST.py +++ b/Athos/SeeDot/AST/AST.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + from enum import Enum, auto OperatorsSymbolDict = { diff --git a/Athos/SeeDot/AST/ASTVisitor.py b/Athos/SeeDot/AST/ASTVisitor.py index c743b90..f286eb8 100644 --- a/Athos/SeeDot/AST/ASTVisitor.py +++ b/Athos/SeeDot/AST/ASTVisitor.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import AST.AST as AST class ASTVisitor: diff --git a/Athos/SeeDot/AST/MtdAST.py b/Athos/SeeDot/AST/MtdAST.py index d4cc228..d6eb09e 100644 --- a/Athos/SeeDot/AST/MtdAST.py +++ b/Athos/SeeDot/AST/MtdAST.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import AST.AST as AST from AST.ASTVisitor import ASTVisitor diff --git a/Athos/SeeDot/AST/PrintAST.py b/Athos/SeeDot/AST/PrintAST.py index 9aa2ffb..f387d07 100644 --- a/Athos/SeeDot/AST/PrintAST.py +++ b/Athos/SeeDot/AST/PrintAST.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import AST.AST as AST from AST.ASTVisitor import ASTVisitor import binascii diff --git a/Athos/SeeDot/Codegen/CodegenBase.py b/Athos/SeeDot/Codegen/CodegenBase.py index aaf91c4..0a2aa8a 100644 --- a/Athos/SeeDot/Codegen/CodegenBase.py +++ b/Athos/SeeDot/Codegen/CodegenBase.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import numpy as np from enum import Enum diff --git a/Athos/SeeDot/Codegen/EzPC.py b/Athos/SeeDot/Codegen/EzPC.py index 066b0e6..176a570 100644 --- a/Athos/SeeDot/Codegen/EzPC.py +++ b/Athos/SeeDot/Codegen/EzPC.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import Util import IR.IR as IR import numpy as np diff --git a/Athos/SeeDot/Compiler.py b/Athos/SeeDot/Compiler.py index 2c9a8f7..b49d0ed 100644 --- a/Athos/SeeDot/Compiler.py +++ b/Athos/SeeDot/Compiler.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import os, sys import _pickle as pickle diff --git a/Athos/SeeDot/IR/IR.py b/Athos/SeeDot/IR/IR.py index bcf5b87..28f08ae 100644 --- a/Athos/SeeDot/IR/IR.py +++ b/Athos/SeeDot/IR/IR.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + from enum import Enum import numpy as np diff --git a/Athos/SeeDot/IR/IRBuilderCSF.py b/Athos/SeeDot/IR/IRBuilderCSF.py index 5e45746..31cd90a 100644 --- a/Athos/SeeDot/IR/IRBuilderCSF.py +++ b/Athos/SeeDot/IR/IRBuilderCSF.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import os, math import operator import numpy as np diff --git a/Athos/SeeDot/IR/IRUtil.py b/Athos/SeeDot/IR/IRUtil.py index 4922cff..3562deb 100644 --- a/Athos/SeeDot/IR/IRUtil.py +++ b/Athos/SeeDot/IR/IRUtil.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import numpy as np from IR.IR import * diff --git a/Athos/SeeDot/Optimizations/LivenessOpti.py b/Athos/SeeDot/Optimizations/LivenessOpti.py index 4a9a16f..130b19a 100644 --- a/Athos/SeeDot/Optimizations/LivenessOpti.py +++ b/Athos/SeeDot/Optimizations/LivenessOpti.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import AST.AST as AST from AST.ASTVisitor import ASTVisitor from AST.MtdAST import MtdAST diff --git a/Athos/SeeDot/Optimizations/ReluMaxpoolOpti.py b/Athos/SeeDot/Optimizations/ReluMaxpoolOpti.py index 1502882..c173d04 100644 --- a/Athos/SeeDot/Optimizations/ReluMaxpoolOpti.py +++ b/Athos/SeeDot/Optimizations/ReluMaxpoolOpti.py @@ -1,3 +1,27 @@ +''' + +Authors: Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import AST.AST as AST from AST.ASTVisitor import ASTVisitor diff --git a/Athos/SeeDot/SeeDot.py b/Athos/SeeDot/SeeDot.py index a9a93b2..847d2ff 100644 --- a/Athos/SeeDot/SeeDot.py +++ b/Athos/SeeDot/SeeDot.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import os, sys import argparse import Util diff --git a/Athos/SeeDot/Type.py b/Athos/SeeDot/Type.py index b1b9a63..b8173b5 100644 --- a/Athos/SeeDot/Type.py +++ b/Athos/SeeDot/Type.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + import operator from functools import reduce diff --git a/Athos/SeeDot/Util.py b/Athos/SeeDot/Util.py index 5f04945..c9204b3 100644 --- a/Athos/SeeDot/Util.py +++ b/Athos/SeeDot/Util.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + # Target word length. class Version: diff --git a/Athos/SeeDot/Writer.py b/Athos/SeeDot/Writer.py index 85168ee..72b27b2 100644 --- a/Athos/SeeDot/Writer.py +++ b/Athos/SeeDot/Writer.py @@ -1,3 +1,27 @@ +''' + +Authors: Sridhar Gopinath, Nishant Kumar. + +Copyright: +Copyright (c) 2018 Microsoft Research +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +''' + class Writer: def __init__(self, fileName): self.file = open(fileName, 'w') diff --git a/Athos/TFCompiler/Graph.py b/Athos/TFCompiler/Graph.py index e15451a..a0029ef 100644 --- a/Athos/TFCompiler/Graph.py +++ b/Athos/TFCompiler/Graph.py @@ -20,6 +20,8 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Ack: A prelim version of this file was written by Aayan Kumar. + ''' import sys, enum, numpy -- GitLab