diff --git a/Makefile b/Makefile index 29a920de..d98f9ac4 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/README.md b/README.md index c8800ae0..b816ed51 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ YASK contains a domain-specific compiler to convert scalar stencil code to SIMD- for multi-socket and multi-node operation or Intel(R) Parallel Studio XE Composer Edition for C++ Linux for single-socket only - (2016 or later, 2018 update 2 recommended). + (2016 or later, 2018 update 2 or later recommended). Building a YASK kernel with the Gnu compiler is possible, but only useful for functional testing. The performance of the kernel built from the Gnu compiler has been observed to be up to 7x lower diff --git a/YASK-LICENSE.md b/YASK-LICENSE.md index a82a4a34..aff26b8b 100644 --- a/YASK-LICENSE.md +++ b/YASK-LICENSE.md @@ -1,5 +1,5 @@ YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/include/yask_common_api.hpp b/include/yask_common_api.hpp index f186c652..1891fda6 100644 --- a/include/yask_common_api.hpp +++ b/include/yask_common_api.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/include/yask_compiler_api.hpp b/include/yask_compiler_api.hpp index f39d8e33..bf3be52f 100644 --- a/include/yask_compiler_api.hpp +++ b/include/yask_compiler_api.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/include/yask_kernel_api.hpp b/include/yask_kernel_api.hpp index f733973b..9384a98d 100644 --- a/include/yask_kernel_api.hpp +++ b/include/yask_kernel_api.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/include/yc_node_api.hpp b/include/yc_node_api.hpp index bf6bd7ad..5e477661 100644 --- a/include/yc_node_api.hpp +++ b/include/yc_node_api.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/include/yk_grid_api.hpp b/include/yk_grid_api.hpp index cb39ef2d..bf98e520 100644 --- a/include/yk_grid_api.hpp +++ b/include/yk_grid_api.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/include/yk_solution_api.hpp b/include/yk_solution_api.hpp index c59775a4..d95654ee 100644 --- a/include/yk_solution_api.hpp +++ b/include/yk_solution_api.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/combo.cpp b/src/common/combo.cpp index a263474a..9ec2327f 100644 --- a/src/common/combo.cpp +++ b/src/common/combo.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/combo.hpp b/src/common/combo.hpp index 5fad8d1d..57c20272 100644 --- a/src/common/combo.hpp +++ b/src/common/combo.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/common.mk b/src/common/common.mk index 69f054ec..ce6f50ee 100644 --- a/src/common/common.mk +++ b/src/common/common.mk @@ -1,6 +1,6 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/src/common/common_utils.cpp b/src/common/common_utils.cpp index 720a9657..cd1378a9 100644 --- a/src/common/common_utils.cpp +++ b/src/common/common_utils.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -46,7 +46,7 @@ namespace yask { // for numbers above 9 (at least up to 99). // Format: "major.minor.patch". - const string version = "2.16.00"; + const string version = "2.16.02"; string yask_get_version_string() { return version; diff --git a/src/common/common_utils.hpp b/src/common/common_utils.hpp index b2bff389..13a68c79 100644 --- a/src/common/common_utils.hpp +++ b/src/common/common_utils.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/idiv.hpp b/src/common/idiv.hpp index 6ebe06a3..060bf94a 100644 --- a/src/common/idiv.hpp +++ b/src/common/idiv.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/output.cpp b/src/common/output.cpp index cb10eedc..c7a22336 100644 --- a/src/common/output.cpp +++ b/src/common/output.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/swig/yask_common_api.i b/src/common/swig/yask_common_api.i index bea3b81e..0014d9cd 100644 --- a/src/common/swig/yask_common_api.i +++ b/src/common/swig/yask_common_api.i @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/tests/tuple_test.cpp b/src/common/tests/tuple_test.cpp index 33f6e17a..33f9c24a 100644 --- a/src/common/tests/tuple_test.cpp +++ b/src/common/tests/tuple_test.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/tuple.cpp b/src/common/tuple.cpp index cc930e6a..bbaf8f6a 100644 --- a/src/common/tuple.cpp +++ b/src/common/tuple.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/tuple.hpp b/src/common/tuple.hpp index 6beef6ed..cccafda6 100644 --- a/src/common/tuple.hpp +++ b/src/common/tuple.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/common/yask_assert.hpp b/src/common/yask_assert.hpp index 5d95db7a..01ee7677 100644 --- a/src/common/yask_assert.hpp +++ b/src/common/yask_assert.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/Makefile b/src/compiler/Makefile index c88683d8..376fbd77 100644 --- a/src/compiler/Makefile +++ b/src/compiler/Makefile @@ -1,6 +1,6 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Cpp.cpp b/src/compiler/lib/Cpp.cpp index ee253b5b..4a967a98 100644 --- a/src/compiler/lib/Cpp.cpp +++ b/src/compiler/lib/Cpp.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Cpp.hpp b/src/compiler/lib/Cpp.hpp index 5e6681c1..ac1b01a2 100644 --- a/src/compiler/lib/Cpp.hpp +++ b/src/compiler/lib/Cpp.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/CppIntrin.cpp b/src/compiler/lib/CppIntrin.cpp index 372c392e..2e5f47e7 100644 --- a/src/compiler/lib/CppIntrin.cpp +++ b/src/compiler/lib/CppIntrin.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/CppIntrin.hpp b/src/compiler/lib/CppIntrin.hpp index 41bc82af..bae61986 100644 --- a/src/compiler/lib/CppIntrin.hpp +++ b/src/compiler/lib/CppIntrin.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Eqs.cpp b/src/compiler/lib/Eqs.cpp index 0485a782..8a067d9b 100644 --- a/src/compiler/lib/Eqs.cpp +++ b/src/compiler/lib/Eqs.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Eqs.hpp b/src/compiler/lib/Eqs.hpp index 4a8e059c..b9dfb34f 100644 --- a/src/compiler/lib/Eqs.hpp +++ b/src/compiler/lib/Eqs.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Expr.cpp b/src/compiler/lib/Expr.cpp index 35a60eee..57fd895f 100644 --- a/src/compiler/lib/Expr.cpp +++ b/src/compiler/lib/Expr.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Expr.hpp b/src/compiler/lib/Expr.hpp index 23a90c1a..61e6b292 100644 --- a/src/compiler/lib/Expr.hpp +++ b/src/compiler/lib/Expr.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/ExprUtils.cpp b/src/compiler/lib/ExprUtils.cpp index 86a2e8c8..83cb91ee 100644 --- a/src/compiler/lib/ExprUtils.cpp +++ b/src/compiler/lib/ExprUtils.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/ExprUtils.hpp b/src/compiler/lib/ExprUtils.hpp index 6b055f9f..74e2dae8 100644 --- a/src/compiler/lib/ExprUtils.hpp +++ b/src/compiler/lib/ExprUtils.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Grid.cpp b/src/compiler/lib/Grid.cpp index a5323f33..561488f2 100644 --- a/src/compiler/lib/Grid.cpp +++ b/src/compiler/lib/Grid.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Grid.hpp b/src/compiler/lib/Grid.hpp index a3529201..fd1e3bd9 100644 --- a/src/compiler/lib/Grid.hpp +++ b/src/compiler/lib/Grid.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Parse.hpp b/src/compiler/lib/Parse.hpp index ec3bdd7f..460cb91a 100644 --- a/src/compiler/lib/Parse.hpp +++ b/src/compiler/lib/Parse.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -28,7 +28,7 @@ IN THE SOFTWARE. #ifndef PARSE_HPP #define PARSE_HPP -#include +#include #include #include #include diff --git a/src/compiler/lib/Print.cpp b/src/compiler/lib/Print.cpp index faaeb31b..79549d05 100644 --- a/src/compiler/lib/Print.cpp +++ b/src/compiler/lib/Print.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Print.hpp b/src/compiler/lib/Print.hpp index 4a570852..3dba3c5c 100644 --- a/src/compiler/lib/Print.hpp +++ b/src/compiler/lib/Print.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Soln.cpp b/src/compiler/lib/Soln.cpp index 445c1b4f..e2059ed0 100644 --- a/src/compiler/lib/Soln.cpp +++ b/src/compiler/lib/Soln.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Soln.hpp b/src/compiler/lib/Soln.hpp index 35713ce9..736c0c0a 100644 --- a/src/compiler/lib/Soln.hpp +++ b/src/compiler/lib/Soln.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -301,7 +301,8 @@ namespace yask { } // namespace yask. -// Convenience macro for registering a stencil in a list. +// Convenience macro for declaring an instance of a stencil and registering +// it in the list used by the default YASK compiler. #define REGISTER_STENCIL(Class) static Class registered_ ## Class(stencils) // Convenience macros for adding 'extension' code to a stencil. diff --git a/src/compiler/lib/Vec.cpp b/src/compiler/lib/Vec.cpp index 3797befd..9fbb3156 100644 --- a/src/compiler/lib/Vec.cpp +++ b/src/compiler/lib/Vec.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Vec.hpp b/src/compiler/lib/Vec.hpp index 1ba497b6..171cd04b 100644 --- a/src/compiler/lib/Vec.hpp +++ b/src/compiler/lib/Vec.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/Visitor.hpp b/src/compiler/lib/Visitor.hpp index 54130bb7..3b65b215 100644 --- a/src/compiler/lib/Visitor.hpp +++ b/src/compiler/lib/Visitor.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/lib/YaskKernel.cpp b/src/compiler/lib/YaskKernel.cpp index 6c15ada9..ea5c1f8f 100644 --- a/src/compiler/lib/YaskKernel.cpp +++ b/src/compiler/lib/YaskKernel.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/main.cpp b/src/compiler/main.cpp index 424233d8..710f37c8 100644 --- a/src/compiler/main.cpp +++ b/src/compiler/main.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -339,7 +339,7 @@ int main(int argc, const char* argv[]) { cout << "YASK -- Yet Another Stencil Kernel\n" "YASK Stencil Compiler\n" - "Copyright (c) 2014-2018, Intel Corporation.\n" + "Copyright (c) 2014-2019, Intel Corporation.\n" "Version: " << yask_get_version_string() << endl; try { diff --git a/src/compiler/swig/yask_compiler_api.i b/src/compiler/swig/yask_compiler_api.i index 4ca24999..3db4b223 100644 --- a/src/compiler/swig/yask_compiler_api.i +++ b/src/compiler/swig/yask_compiler_api.i @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/tests/yask_compiler_api_exception_test.cpp b/src/compiler/tests/yask_compiler_api_exception_test.cpp index 9d007b5a..fd391dde 100644 --- a/src/compiler/tests/yask_compiler_api_exception_test.cpp +++ b/src/compiler/tests/yask_compiler_api_exception_test.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/tests/yask_compiler_api_exception_test.py b/src/compiler/tests/yask_compiler_api_exception_test.py index 4650763f..ad470229 100755 --- a/src/compiler/tests/yask_compiler_api_exception_test.py +++ b/src/compiler/tests/yask_compiler_api_exception_test.py @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/tests/yask_compiler_api_test.cpp b/src/compiler/tests/yask_compiler_api_test.cpp index d16b8da0..43404223 100644 --- a/src/compiler/tests/yask_compiler_api_test.cpp +++ b/src/compiler/tests/yask_compiler_api_test.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/compiler/tests/yask_compiler_api_test.py b/src/compiler/tests/yask_compiler_api_test.py index 1240df02..0b4b1c7e 100755 --- a/src/compiler/tests/yask_compiler_api_test.py +++ b/src/compiler/tests/yask_compiler_api_test.py @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/src/contrib/coefficients/fd_coeff.cpp b/src/contrib/coefficients/fd_coeff.cpp index 9665231d..c23b61d2 100644 --- a/src/contrib/coefficients/fd_coeff.cpp +++ b/src/contrib/coefficients/fd_coeff.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/contrib/coefficients/fd_coeff.hpp b/src/contrib/coefficients/fd_coeff.hpp index 715af1fd..112aaa19 100644 --- a/src/contrib/coefficients/fd_coeff.hpp +++ b/src/contrib/coefficients/fd_coeff.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/contrib/coefficients/fd_coeff_test.cpp b/src/contrib/coefficients/fd_coeff_test.cpp index f2153189..1bd0c1f7 100644 --- a/src/contrib/coefficients/fd_coeff_test.cpp +++ b/src/contrib/coefficients/fd_coeff_test.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/Makefile b/src/kernel/Makefile index 94169319..0ea0f25a 100644 --- a/src/kernel/Makefile +++ b/src/kernel/Makefile @@ -1,6 +1,6 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to @@ -236,7 +236,6 @@ omp_block_schedule ?= static,1 omp_misc_schedule ?= guided def_thread_divisor ?= 1 def_block_threads ?= 2 -real_bytes ?= 4 def_rank_args ?= -d 128 def_block_args ?= -b 64 cluster ?= x=1 @@ -450,8 +449,8 @@ ifeq ($(vtune),1) MACROS += USE_VTUNE ifneq ($(VTUNE_AMPLIFIER_2019_DIR),) VTUNE_DIR := $(VTUNE_AMPLIFIER_2019_DIR) -else ifneq ($(VTUNE_AMPLIFIER_2018_DIR),) - VTUNE_DIR := $(VTUNE_AMPLIFIER_2018_DIR) +else ifneq ($(VTUNE_AMPLIFIER_2019_DIR),) + VTUNE_DIR := $(VTUNE_AMPLIFIER_2019_DIR) else ifneq ($(VTUNE_AMPLIFIER_XE_2017_DIR),) VTUNE_DIR := $(VTUNE_AMPLIFIER_XE_2017_DIR) else ifneq ($(VTUNE_AMPLIFIER_XE_2016_DIR),) diff --git a/src/kernel/lib/alloc.cpp b/src/kernel/lib/alloc.cpp index e2a43135..9b5d87ae 100644 --- a/src/kernel/lib/alloc.cpp +++ b/src/kernel/lib/alloc.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -138,7 +138,7 @@ namespace yask { os << "PMEM grid-allocation priority:" << endl; for (auto sp : sortedGridPtrs) { os << " '" << sp->get_name() << "'"; - if (gridPtrSet.find(sp)!=gridPtrSet.end()) + if (done.find(sp)!=done.end()) os << " (output)"; os << endl; } @@ -152,7 +152,7 @@ namespace yask { map > _grid_data_buf; #ifdef USE_PMEM - auto preferredNUMASize = opts->_numa_pref_max * 1024*1024*1024; + auto preferredNUMASize = opts->_numa_pref_max * 1024*1024*(size_t)1024; #endif // Pass 0: assign PMEM node when preferred NUMA node is not enough. diff --git a/src/kernel/lib/auto_tuner.cpp b/src/kernel/lib/auto_tuner.cpp index 891b1cfc..1dfbd4ed 100644 --- a/src/kernel/lib/auto_tuner.cpp +++ b/src/kernel/lib/auto_tuner.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/auto_tuner.hpp b/src/kernel/lib/auto_tuner.hpp index 40726427..b49218b9 100644 --- a/src/kernel/lib/auto_tuner.hpp +++ b/src/kernel/lib/auto_tuner.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/cache_model.hpp b/src/kernel/lib/cache_model.hpp index c5912822..f2788442 100644 --- a/src/kernel/lib/cache_model.hpp +++ b/src/kernel/lib/cache_model.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/context.cpp b/src/kernel/lib/context.cpp index ac3fc2b5..90eb756d 100644 --- a/src/kernel/lib/context.cpp +++ b/src/kernel/lib/context.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/context.hpp b/src/kernel/lib/context.hpp index 690e4ebe..c2b7bc76 100644 --- a/src/kernel/lib/context.hpp +++ b/src/kernel/lib/context.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/factory.cpp b/src/kernel/lib/factory.cpp index 979623f2..3f109a7c 100644 --- a/src/kernel/lib/factory.cpp +++ b/src/kernel/lib/factory.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/generic_grids.cpp b/src/kernel/lib/generic_grids.cpp index acc085d0..03c5a757 100644 --- a/src/kernel/lib/generic_grids.cpp +++ b/src/kernel/lib/generic_grids.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/generic_grids.hpp b/src/kernel/lib/generic_grids.hpp index 4107786b..30e3905b 100644 --- a/src/kernel/lib/generic_grids.hpp +++ b/src/kernel/lib/generic_grids.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/grid_apis.cpp b/src/kernel/lib/grid_apis.cpp index a534fae4..1b677d0b 100644 --- a/src/kernel/lib/grid_apis.cpp +++ b/src/kernel/lib/grid_apis.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/new_grid.cpp b/src/kernel/lib/new_grid.cpp index 0d9aa056..559554bf 100644 --- a/src/kernel/lib/new_grid.cpp +++ b/src/kernel/lib/new_grid.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/realv.hpp b/src/kernel/lib/realv.hpp index 0cca9768..b34199ed 100644 --- a/src/kernel/lib/realv.hpp +++ b/src/kernel/lib/realv.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/realv_grids.cpp b/src/kernel/lib/realv_grids.cpp index a3359492..b3c7437c 100644 --- a/src/kernel/lib/realv_grids.cpp +++ b/src/kernel/lib/realv_grids.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/realv_grids.hpp b/src/kernel/lib/realv_grids.hpp index 27396d46..2a3a99a7 100644 --- a/src/kernel/lib/realv_grids.hpp +++ b/src/kernel/lib/realv_grids.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/settings.cpp b/src/kernel/lib/settings.cpp index 88861335..fd56c46f 100644 --- a/src/kernel/lib/settings.cpp +++ b/src/kernel/lib/settings.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/settings.hpp b/src/kernel/lib/settings.hpp index 0b1dd4cf..6113a980 100644 --- a/src/kernel/lib/settings.hpp +++ b/src/kernel/lib/settings.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -494,8 +494,8 @@ namespace yask { Indices align_ofs; // adjustment for alignment (see below). Indices group_size; // proximity grouping within range. - // Alignment: when possible, each step will be aligned - // such that ((start - align_ofs) % align) == 0. + // Alignment: when possible, start positions after the first + // in each dim will be aligned such that ((start - align_ofs) % align) == 0. // Output values; set once for entire range. Indices num_indices; // number of indices in each dim. diff --git a/src/kernel/lib/setup.cpp b/src/kernel/lib/setup.cpp index 80703512..cc6a69ce 100644 --- a/src/kernel/lib/setup.cpp +++ b/src/kernel/lib/setup.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/soln_apis.cpp b/src/kernel/lib/soln_apis.cpp index 394c2be2..ad966dd1 100644 --- a/src/kernel/lib/soln_apis.cpp +++ b/src/kernel/lib/soln_apis.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/stencil_calc.cpp b/src/kernel/lib/stencil_calc.cpp index 77960eb9..4b50cb87 100644 --- a/src/kernel/lib/stencil_calc.cpp +++ b/src/kernel/lib/stencil_calc.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -86,16 +86,16 @@ namespace yask { // Trim the mini-block indices based on the bounding box(es) // for this bundle. - ScanIndices bb_idxs(mini_block_idxs); + ScanIndices mb_idxs(mini_block_idxs); DOMAIN_VAR_LOOP(i, j) { // Begin point. auto bbegin = max(mini_block_idxs.begin[i], bb.bb_begin[j]); - bb_idxs.begin[i] = bbegin; + mb_idxs.begin[i] = bbegin; // End point. auto bend = min(mini_block_idxs.end[i], bb.bb_end[j]); - bb_idxs.end[i] = bend; + mb_idxs.end[i] = bend; // Anything to do? if (bend <= bbegin) { @@ -113,8 +113,8 @@ namespace yask { TRACE_MSG3("calc_mini_block('" << get_name() << "'): after trimming for BB " << bbn << ": [" << - bb_idxs.begin.makeValStr(nsdims) << - " ... " << bb_idxs.end.makeValStr(nsdims) << ")"); + mb_idxs.begin.makeValStr(nsdims) << + " ... " << mb_idxs.end.makeValStr(nsdims) << ")"); // Get the bundles that need to be processed in // this block. This will be any prerequisite scratch-grid @@ -134,17 +134,25 @@ namespace yask { int block_thread_idx = (nbt <= 1) ? 0 : omp_get_thread_num(); // Indices needed for the generated loops. Will normally be a - // copy of 'bb_idxs' except when updating scratch-grids. - ScanIndices adj_mb_idxs = sg->adjust_span(region_thread_idx, bb_idxs); - - // Tweak step sizes for adjusted indices. If original - // [or auto-tuned] sub-block covers entire mini-block, - // set step size to full width. If binding threads to - // sub-blocks, set step size to full width in all but - // the binding dim. + // copy of 'mb_idxs' except when updating scratch-grids. + ScanIndices adj_mb_idxs = sg->adjust_span(region_thread_idx, mb_idxs); + + // Tweak settings for adjusted indices. DOMAIN_VAR_LOOP(i, j) { - if (bind_threads && i == bind_posn) + + // If binding threads to sub-blocks and this is the + // binding dim, set step size and alignment + // granularity to the slab width. Setting the + // alignment keeps slabs aligned between packs. + if (bind_threads && i == bind_posn) { adj_mb_idxs.step[i] = bind_slab_pts; + adj_mb_idxs.align[i] = bind_slab_pts; + } + + // If original [or auto-tuned] sub-block covers + // entire mini-block, set step size to full width. + // Also do this when binding and this is not the + // binding dim. else if ((settings._sub_block_sizes[i] >= settings._mini_block_sizes[i]) || bind_threads) adj_mb_idxs.step[i] = adj_mb_idxs.end[i] - adj_mb_idxs.begin[i]; @@ -158,15 +166,15 @@ namespace yask { " by region thread " << region_thread_idx << " and block thread " << block_thread_idx); - // If binding threads to sub-blocks, run the mini-block + // If binding threads to data, run the mini-block // loops on all block threads and call calc_sub_block() // only by the designated thread for the given slab // index in the binding dim. if (bind_threads) { const idx_t idx_ofs = 0x1000; // to help keep pattern when idx is neg. #define OMP_PRAGMA -#define CALC_SUB_BLOCK(mb_idxs) \ - auto bind_elem_idx = mb_idxs.start[bind_posn]; \ +#define CALC_SUB_BLOCK(mb_idxs) \ + auto bind_elem_idx = mb_idxs.start[bind_posn]; \ auto bind_slab_idx = idiv_flr(bind_elem_idx + idx_ofs, bind_slab_pts); \ auto bind_thr = imod_flr(bind_slab_idx, nbt); \ if (block_thread_idx == bind_thr) \ @@ -176,8 +184,9 @@ namespace yask { #undef OMP_PRAGMA } - // Call calc_sub_block() with a different thread for each - // sub-block. + // If not binding therads to data, call calc_sub_block() + // with a different thread for each sub-block using + // standard OpenMP scheduling. else { #define CALC_SUB_BLOCK(mb_idxs) \ sg->calc_sub_block(region_thread_idx, block_thread_idx, settings, mb_idxs) diff --git a/src/kernel/lib/stencil_calc.hpp b/src/kernel/lib/stencil_calc.hpp index 6124b78e..7695cf0d 100644 --- a/src/kernel/lib/stencil_calc.hpp +++ b/src/kernel/lib/stencil_calc.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/utils.cpp b/src/kernel/lib/utils.cpp index 42a0a0b2..4db591d6 100644 --- a/src/kernel/lib/utils.cpp +++ b/src/kernel/lib/utils.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -278,7 +278,8 @@ namespace yask { int err = 0; int fd; // 'X' of pmemX should be matched with the NUMA node. - string pmem_name("/mnt/pmem") + to_string(dev_num); + string pmem_name("/mnt/pmem"); + pmem_name += to_string(dev_num); err = pmem_tmpfile(pmem_name.c_str(), nbytes, &fd, &p); if (err) THROW_YASK_EXCEPTION("Error: Unable to create temporary file for PMEM"); diff --git a/src/kernel/lib/utils.hpp b/src/kernel/lib/utils.hpp index 29e9c96f..66147400 100644 --- a/src/kernel/lib/utils.hpp +++ b/src/kernel/lib/utils.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/lib/yask.hpp b/src/kernel/lib/yask.hpp index 0711024c..74374b86 100644 --- a/src/kernel/lib/yask.hpp +++ b/src/kernel/lib/yask.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -58,6 +58,7 @@ typedef int MPI_Request; // Standard C and C++ headers. #include +#include #include #include #include @@ -68,7 +69,6 @@ typedef int MPI_Request; #include #include #include -#include #include #include #include diff --git a/src/kernel/lib/yask_stencil.hpp b/src/kernel/lib/yask_stencil.hpp index 674bf3a9..b5356875 100644 --- a/src/kernel/lib/yask_stencil.hpp +++ b/src/kernel/lib/yask_stencil.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/swig/yask_kernel_api.i b/src/kernel/swig/yask_kernel_api.i index 421f79ad..f4a33215 100644 --- a/src/kernel/swig/yask_kernel_api.i +++ b/src/kernel/swig/yask_kernel_api.i @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/tests/grid_test.cpp b/src/kernel/tests/grid_test.cpp index 46603e46..ae05af13 100644 --- a/src/kernel/tests/grid_test.cpp +++ b/src/kernel/tests/grid_test.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/tests/yask_kernel_api_exception_test.cpp b/src/kernel/tests/yask_kernel_api_exception_test.cpp index 2b91935c..9be8b8db 100644 --- a/src/kernel/tests/yask_kernel_api_exception_test.cpp +++ b/src/kernel/tests/yask_kernel_api_exception_test.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/tests/yask_kernel_api_exception_test.py b/src/kernel/tests/yask_kernel_api_exception_test.py index ac97aa69..a48086ba 100755 --- a/src/kernel/tests/yask_kernel_api_exception_test.py +++ b/src/kernel/tests/yask_kernel_api_exception_test.py @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/tests/yask_kernel_api_test.cpp b/src/kernel/tests/yask_kernel_api_test.cpp index d43251d0..80e1074b 100644 --- a/src/kernel/tests/yask_kernel_api_test.cpp +++ b/src/kernel/tests/yask_kernel_api_test.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/tests/yask_kernel_api_test.py b/src/kernel/tests/yask_kernel_api_test.py index 0f6d5fdb..f2341b08 100755 --- a/src/kernel/tests/yask_kernel_api_test.py +++ b/src/kernel/tests/yask_kernel_api_test.py @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/yask.sh b/src/kernel/yask.sh index 388de165..75cac005 100755 --- a/src/kernel/yask.sh +++ b/src/kernel/yask.sh @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/src/kernel/yask_main.cpp b/src/kernel/yask_main.cpp index 0e6adaa3..7938e69e 100644 --- a/src/kernel/yask_main.cpp +++ b/src/kernel/yask_main.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to @@ -197,7 +197,7 @@ struct AppSettings : public KernelSettings { "┌────────────────────────────────────────────┐\n" "│ Y.A.S.K. ── Yet Another Stencil Kernel │\n" "│ https://github.com/intel/yask │\n" - "│ Copyright (c) 2014-2018, Intel Corporation │\n" + "│ Copyright (c) 2014-2019, Intel Corporation │\n" "└────────────────────────────────────────────┘\n" "\n" "Version: " << yask_get_version_string() << endl << diff --git a/src/stencils/AwpElasticStencil.cpp b/src/stencils/AwpElasticStencil.cpp index bcd22370..62978e37 100644 --- a/src/stencils/AwpElasticStencil.cpp +++ b/src/stencils/AwpElasticStencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/AwpStencil.cpp b/src/stencils/AwpStencil.cpp index 8c2c89b3..213302af 100644 --- a/src/stencils/AwpStencil.cpp +++ b/src/stencils/AwpStencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/ElasticStencil/Elastic2Stencil.hpp b/src/stencils/ElasticStencil/Elastic2Stencil.hpp index fc93be79..96e113fd 100644 --- a/src/stencils/ElasticStencil/Elastic2Stencil.hpp +++ b/src/stencils/ElasticStencil/Elastic2Stencil.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/ElasticStencil/ElasticStencil.hpp b/src/stencils/ElasticStencil/ElasticStencil.hpp index e843bb95..f8c0a229 100644 --- a/src/stencils/ElasticStencil/ElasticStencil.hpp +++ b/src/stencils/ElasticStencil/ElasticStencil.hpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/ExampleStencil.cpp b/src/stencils/ExampleStencil.cpp index e85dcd92..5e08782f 100644 --- a/src/stencils/ExampleStencil.cpp +++ b/src/stencils/ExampleStencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/FSGElastic2Stencil.cpp b/src/stencils/FSGElastic2Stencil.cpp index 90b731fe..aff29e4f 100644 --- a/src/stencils/FSGElastic2Stencil.cpp +++ b/src/stencils/FSGElastic2Stencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/FSGElasticStencil.cpp b/src/stencils/FSGElasticStencil.cpp index afd772dc..a34e973b 100644 --- a/src/stencils/FSGElasticStencil.cpp +++ b/src/stencils/FSGElasticStencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/Iso3dfdStencil.cpp b/src/stencils/Iso3dfdStencil.cpp index fad3561d..eeb6892a 100644 --- a/src/stencils/Iso3dfdStencil.cpp +++ b/src/stencils/Iso3dfdStencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/SSGElastic2Stencil.cpp b/src/stencils/SSGElastic2Stencil.cpp index cc7ef7b9..fa9a1a41 100644 --- a/src/stencils/SSGElastic2Stencil.cpp +++ b/src/stencils/SSGElastic2Stencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/SSGElasticStencil.cpp b/src/stencils/SSGElasticStencil.cpp index e87e8a53..cc3709a9 100644 --- a/src/stencils/SSGElasticStencil.cpp +++ b/src/stencils/SSGElasticStencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/SimpleTestStencils.cpp b/src/stencils/SimpleTestStencils.cpp index 04836450..826960f8 100644 --- a/src/stencils/SimpleTestStencils.cpp +++ b/src/stencils/SimpleTestStencils.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/src/stencils/TTIStencil.cpp b/src/stencils/TTIStencil.cpp index 3647a9f3..94ccfbc8 100644 --- a/src/stencils/TTIStencil.cpp +++ b/src/stencils/TTIStencil.cpp @@ -1,7 +1,7 @@ /***************************************************************************** YASK: Yet Another Stencil Kernel -Copyright (c) 2014-2018, Intel Corporation +Copyright (c) 2014-2019, Intel Corporation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to diff --git a/utils/bin/analyze_trace.pl b/utils/bin/analyze_trace.pl index 56b06327..8499a257 100755 --- a/utils/bin/analyze_trace.pl +++ b/utils/bin/analyze_trace.pl @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/utils/bin/gen_layouts.pl b/utils/bin/gen_layouts.pl index e32c0a94..b7c33370 100755 --- a/utils/bin/gen_layouts.pl +++ b/utils/bin/gen_layouts.pl @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/utils/bin/gen_loops.pl b/utils/bin/gen_loops.pl index 3802d06e..56789220 100755 --- a/utils/bin/gen_loops.pl +++ b/utils/bin/gen_loops.pl @@ -3,7 +3,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/utils/bin/get_loop_stats.pl b/utils/bin/get_loop_stats.pl index 9748ba4a..676a6f63 100755 --- a/utils/bin/get_loop_stats.pl +++ b/utils/bin/get_loop_stats.pl @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/utils/bin/yask_log_to_csv.pl b/utils/bin/yask_log_to_csv.pl index cb41379b..01958b88 100755 --- a/utils/bin/yask_log_to_csv.pl +++ b/utils/bin/yask_log_to_csv.pl @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to @@ -43,9 +43,8 @@ $outFH = *STDOUT; # Header. -print $outFH "log file,"; YaskUtils::printCsvHeader($outFH); -print $outFH "\n"; +print $outFH ",log file\n"; # Values from files. for my $arg (@ARGV) { @@ -53,8 +52,7 @@ my %results; YaskUtils::getResultsFromFile(\%results, $fn); - print $outFH "\"$fn\","; YaskUtils::printCsvValues(\%results, $outFH); - print $outFH "\n"; + print $outFH ",\"$fn\"\n"; } } diff --git a/utils/bin/yask_tuner.pl b/utils/bin/yask_tuner.pl index 50b9480d..fff714b6 100755 --- a/utils/bin/yask_tuner.pl +++ b/utils/bin/yask_tuner.pl @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/utils/bin/yask_tuner_summary.csh b/utils/bin/yask_tuner_summary.csh index 7c1b5370..9207aae1 100755 --- a/utils/bin/yask_tuner_summary.csh +++ b/utils/bin/yask_tuner_summary.csh @@ -2,7 +2,7 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/utils/lib/CmdLine.pm b/utils/lib/CmdLine.pm index b8c1c2d5..6120bc8d 100644 --- a/utils/lib/CmdLine.pm +++ b/utils/lib/CmdLine.pm @@ -1,6 +1,6 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to diff --git a/utils/lib/YaskUtils.pm b/utils/lib/YaskUtils.pm index 9b431376..d909c2f2 100644 --- a/utils/lib/YaskUtils.pm +++ b/utils/lib/YaskUtils.pm @@ -1,6 +1,6 @@ ############################################################################## ## YASK: Yet Another Stencil Kernel -## Copyright (c) 2014-2018, Intel Corporation +## Copyright (c) 2014-2019, Intel Corporation ## ## Permission is hereby granted, free of charge, to any person obtaining a copy ## of this software and associated documentation files (the "Software"), to @@ -39,7 +39,7 @@ our @special_log_keys = ); # Values to get from log file. -# First one should be "fitness". +# First one should be overall "fitness". # Key must start with the following string. # Case ignored and spaces and hyphens interchangeable. our @log_keys =