diff --git a/pom.xml b/pom.xml index 7bb0d648b507bca6035b0b3e9a9156df50b309fc..b9d74aa776424807054b6a4b872fc04a6b690ff9 100644 --- a/pom.xml +++ b/pom.xml @@ -95,6 +95,7 @@ <mainClass>com.syncleus.aparapi.examples.All</mainClass> <arguments> <argument>com.syncleus.aparapi.executionMode=GPU</argument> + <argument>com.syncleus.aparapi.enableShowGeneratedOpenCL=true</argument> </arguments> </configuration> </plugin> diff --git a/samples/convolution/.gitignore b/samples/convolution/.gitignore deleted file mode 100644 index 840e7d3120ee3206168d49bf62df2c269c38e17e..0000000000000000000000000000000000000000 --- a/samples/convolution/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/classes/ diff --git a/samples/convolution/.project b/samples/convolution/.project deleted file mode 100644 index a304e12fe2c740acb75674e6ccb285155ddf2c2a..0000000000000000000000000000000000000000 --- a/samples/convolution/.project +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>convolution</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.jdt.core.javabuilder</name> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.eclipse.jdt.core.javanature</nature> - </natures> -</projectDescription> diff --git a/samples/convolution/build.xml b/samples/convolution/build.xml deleted file mode 100644 index aa4db3c095653dcc2ad9df5441a3f856a6454266..0000000000000000000000000000000000000000 --- a/samples/convolution/build.xml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0"?> - -<project name="convolution" default="build" basedir="."> - - <!-- Ideally this would be the latest version of Java but not everyone is going to have it installed --> - <!-- Additionally we want to avoid "Class not found: javac1.8" errors from old Ant versions (i.e. Eclipse) --> - <property name="build.compiler" value="javac1.7" /> - <property name="ant.build.javac.source" value="1.7" /> - <property name="ant.build.javac.target" value="1.7" /> - - <path id="compiler.class.path"> - <pathelement path="../../com.syncleus.aparapi/dist/aparapi.jar" /> - </path> - - <path id="runtime.class.path" cache="true"> - <path refid="compiler.class.path" /> - <pathelement path="${ant.project.name}.jar" /> - </path> - - <target name="build" depends="clean"> - <mkdir dir="classes" /> - <javac srcdir="src" destdir="classes" debug="on" includeantruntime="false"> - <classpath> - <pathelement path="../../com.syncleus.aparapi/dist/aparapi.jar" /> - </classpath> - </javac> - <copy file="src\com\amd\aparapi\sample\convolution\convolution.cl" toDir="classes\com\amd\aparapi\sample\convolution" /> - <jar jarfile="${ant.project.name}.jar" basedir="classes" /> - </target> - - <target name="clean"> - <delete dir="classes" /> - <delete file="${ant.project.name}.jar" /> - </target> - - <target name="run-jtp"> - <java classname="com.syncleus.aparapi.sample.convolution.Convolution" fork="true"> - <classpath refid="runtime.class.path" /> - <sysproperty key="java.library.path" path="..\..\com.syncleus.aparapi.jni\dist" /> - <sysproperty key="com.syncleus.aparapi.executionMode" value="JTP" /> - </java> - </target> - - <target name="run-gpu"> - <java classname="com.syncleus.aparapi.sample.convolution.Convolution" fork="true"> - <classpath refid="runtime.class.path" /> - <sysproperty key="java.library.path" path="..\..\com.syncleus.aparapi.jni\dist" /> - <sysproperty key="com.syncleus.aparapi.executionMode" value="GPU" /> - </java> - </target> - - <target name="run" depends="run-gpu" /> - -</project> diff --git a/samples/convolution/conv.bat b/samples/convolution/conv.bat deleted file mode 100644 index 0374609617cc0f98aa2418feb50374430df0ae6d..0000000000000000000000000000000000000000 --- a/samples/convolution/conv.bat +++ /dev/null @@ -1,7 +0,0 @@ -java ^ - -Djava.library.path=../../com.syncleus.aparapi.jni/dist ^ - -Dcom.syncleus.aparapi.executionMode=%1 ^ - -Dcom.syncleus.aparapi.enableShowGeneratedOpenCL=true ^ - -classpath ../../com.syncleus.aparapi/dist/aparapi.jar;convolution.jar ^ - com.syncleus.aparapi.sample.convolution.Convolution %2 - diff --git a/samples/convolution/conv.sh b/samples/convolution/conv.sh deleted file mode 100644 index 4fa3539f3bc6b546fdfbecd251c84e162429025f..0000000000000000000000000000000000000000 --- a/samples/convolution/conv.sh +++ /dev/null @@ -1,6 +0,0 @@ -java \ - -Djava.library.path=../../com.syncleus.aparapi.jni/dist\ - -Dcom.syncleus.aparapi.executionMode=$1\ - -Dcom.syncleus.aparapi.enableShowGeneratedOpenCL=true\ - -classpath ../../com.syncleus.aparapi/dist/aparapi.jar:convolution.jar\ - com.syncleus.aparapi.sample.convolution.Convolution $2 diff --git a/samples/convolution/opencl.bat b/samples/convolution/opencl.bat deleted file mode 100644 index afd39d52cf20bb56627189d97affee442a3341d6..0000000000000000000000000000000000000000 --- a/samples/convolution/opencl.bat +++ /dev/null @@ -1,6 +0,0 @@ -java ^ - -Djava.library.path=../../com.syncleus.aparapi.jni/dist ^ - -Dcom.syncleus.aparapi.executionMode=%1 ^ - -classpath ../../com.syncleus.aparapi/dist/aparapi.jar;convolution.jar ^ - com.syncleus.aparapi.sample.convolution.ConvolutionOpenCL %2 - diff --git a/samples/convolution/pureJava.bat b/samples/convolution/pureJava.bat deleted file mode 100644 index df2fb0fab17f8bb74e1454c70c50a0f112047aa7..0000000000000000000000000000000000000000 --- a/samples/convolution/pureJava.bat +++ /dev/null @@ -1,6 +0,0 @@ -java ^ - -Djava.library.path=../../com.syncleus.aparapi.jni/dist ^ - -Dcom.syncleus.aparapi.executionMode=%1 ^ - -classpath ../../com.syncleus.aparapi/dist/aparapi.jar;convolution.jar ^ - com.syncleus.aparapi.sample.convolution.PureJava %2 - diff --git a/src/main/java/com/syncleus/aparapi/examples/All.java b/src/main/java/com/syncleus/aparapi/examples/All.java index 4628fa2cf5da2ff168136e6cd49873f84e0ad187..4df4625b3dfcf47098eec33d638f9608c329cf6c 100644 --- a/src/main/java/com/syncleus/aparapi/examples/All.java +++ b/src/main/java/com/syncleus/aparapi/examples/All.java @@ -13,11 +13,14 @@ package com.syncleus.aparapi.examples; import java.util.Scanner; public class All { - public static void main(String[] _args) { + public static void main(String[] _args) throws Exception { System.out.println("Select which example to run:"); System.out.println(" 1) Game of Life"); System.out.println(" 2) Mandelbrot"); System.out.println(" 3) Mandlebrot 2D"); + System.out.println(" 4) Convolution"); + System.out.println(" 5) Convolution (OpenCL)"); + System.out.println(" 6) Convolution (pure Java)"); System.out.println(); Scanner in = new Scanner(System.in); @@ -28,7 +31,7 @@ public class All { if( in.hasNextLine() ) { String line = in.nextLine(); - running = selected(line); + running = selected(line, _args); System.out.println(); } else @@ -41,7 +44,7 @@ public class All { } } - private static boolean selected(String line) + private static boolean selected(String line, String[] args) throws Exception { if( line.toUpperCase().equals("Q") ) return false; @@ -49,13 +52,22 @@ public class All { switch(line) { case "1": - com.syncleus.aparapi.examples.life.Main.main(null); + com.syncleus.aparapi.examples.life.Main.main(args); break; case "2": - com.syncleus.aparapi.examples.mandel.Main.main(null); + com.syncleus.aparapi.examples.mandel.Main.main(args); break; case "3": - com.syncleus.aparapi.examples.mandel.Main2D.main(null); + com.syncleus.aparapi.examples.mandel.Main2D.main(args); + break; + case "4": + com.syncleus.aparapi.examples.convolution.Convolution.main(args); + break; + case "5": + com.syncleus.aparapi.examples.convolution.ConvolutionOpenCL.main(args); + break; + case "6": + com.syncleus.aparapi.examples.convolution.PureJava.main(args); break; default: System.out.println("Invalid selection."); diff --git a/samples/convolution/src/com/amd/aparapi/sample/convolution/ConvMatrix3x3Editor.java b/src/main/java/com/syncleus/aparapi/examples/convolution/ConvMatrix3x3Editor.java similarity index 91% rename from samples/convolution/src/com/amd/aparapi/sample/convolution/ConvMatrix3x3Editor.java rename to src/main/java/com/syncleus/aparapi/examples/convolution/ConvMatrix3x3Editor.java index 75d4ea227889fd83e9604d691bae58c7205c04a1..39a225047fd6748635c3df8ab3dc902711ad494b 100644 --- a/samples/convolution/src/com/amd/aparapi/sample/convolution/ConvMatrix3x3Editor.java +++ b/src/main/java/com/syncleus/aparapi/examples/convolution/ConvMatrix3x3Editor.java @@ -1,3 +1,13 @@ +/** + * This product currently only contains code developed by authors + * of specific components, as identified by the source code files. + * + * Since product implements StAX API, it has dependencies to StAX API + * classes. + * + * For additional credits (generally to people who reported problems) + * see CREDITS file. + */ /* Copyright (c) 2010-2011, Advanced Micro Devices, Inc. All rights reserved. @@ -36,7 +46,7 @@ under those regulations, please refer to the U.S. Bureau of Industry and Securit */ -package com.syncleus.aparapi.sample.convolution; +package com.syncleus.aparapi.examples.convolution; import java.awt.BorderLayout; import java.awt.Component; diff --git a/samples/convolution/src/com/amd/aparapi/sample/convolution/Convolution.java b/src/main/java/com/syncleus/aparapi/examples/convolution/Convolution.java similarity index 90% rename from samples/convolution/src/com/amd/aparapi/sample/convolution/Convolution.java rename to src/main/java/com/syncleus/aparapi/examples/convolution/Convolution.java index 6452b2456a7da04f60dcd9e3ba19884043fe12bf..4e8a7f5266f7f210d59bc2189e6d818c4d7c6fe7 100644 --- a/samples/convolution/src/com/amd/aparapi/sample/convolution/Convolution.java +++ b/src/main/java/com/syncleus/aparapi/examples/convolution/Convolution.java @@ -1,3 +1,13 @@ +/** + * This product currently only contains code developed by authors + * of specific components, as identified by the source code files. + * + * Since product implements StAX API, it has dependencies to StAX API + * classes. + * + * For additional credits (generally to people who reported problems) + * see CREDITS file. + */ /* Copyright (c) 2010-2011, Advanced Micro Devices, Inc. All rights reserved. @@ -36,7 +46,7 @@ under those regulations, please refer to the U.S. Bureau of Industry and Securit */ -package com.syncleus.aparapi.sample.convolution; +package com.syncleus.aparapi.examples.convolution; import com.syncleus.aparapi.*; @@ -46,7 +56,7 @@ public class Convolution { public static void main(final String[] _args) throws IOException { - final File file = new File(_args.length == 1 ? _args[0] : "./samples/convolution/testcard.jpg").getCanonicalFile(); + final File file = new File(_args.length == 1 ? _args[0] : "./src/main/resources/testcard.jpg").getCanonicalFile(); final ImageConvolution convolution = new ImageConvolution(); diff --git a/samples/convolution/src/com/amd/aparapi/sample/convolution/ConvolutionOpenCL.java b/src/main/java/com/syncleus/aparapi/examples/convolution/ConvolutionOpenCL.java similarity index 87% rename from samples/convolution/src/com/amd/aparapi/sample/convolution/ConvolutionOpenCL.java rename to src/main/java/com/syncleus/aparapi/examples/convolution/ConvolutionOpenCL.java index aad33f9e4ab36da6014f9cb5a6f4e34396a3aacd..e611395dbd979236f43d3552c0d6c889f71f7cfd 100644 --- a/samples/convolution/src/com/amd/aparapi/sample/convolution/ConvolutionOpenCL.java +++ b/src/main/java/com/syncleus/aparapi/examples/convolution/ConvolutionOpenCL.java @@ -1,3 +1,13 @@ +/** + * This product currently only contains code developed by authors + * of specific components, as identified by the source code files. + * + * Since product implements StAX API, it has dependencies to StAX API + * classes. + * + * For additional credits (generally to people who reported problems) + * see CREDITS file. + */ /* Copyright (c) 2010-2011, Advanced Micro Devices, Inc. All rights reserved. @@ -36,7 +46,7 @@ under those regulations, please refer to the U.S. Bureau of Industry and Securit */ -package com.syncleus.aparapi.sample.convolution; +package com.syncleus.aparapi.examples.convolution; import com.syncleus.aparapi.*; import com.syncleus.aparapi.device.*; @@ -48,7 +58,7 @@ import java.io.*; public class ConvolutionOpenCL{ - @Resource("com/amd/aparapi/sample/convolution/convolution.cl") interface Convolution extends OpenCL<Convolution>{ + @Resource("com/syncleus/aparapi/examples/convolution/convolution.cl") interface Convolution extends OpenCL<Convolution>{ Convolution applyConvolution(// Range range, // @GlobalReadOnly("_convMatrix3x3") float[] _convMatrix3x3,//// only read from kernel @@ -59,7 +69,7 @@ public class ConvolutionOpenCL{ } public static void main(final String[] _args) { - final File file = new File(_args.length == 1 ? _args[0] : "testcard.jpg"); + final File file = new File(_args.length == 1 ? _args[0] : "./src/main/resources/testcard.jpg"); final OpenCLDevice openclDevice = (OpenCLDevice) KernelManager.instance().bestDevice(); diff --git a/samples/convolution/src/com/amd/aparapi/sample/convolution/ConvolutionViewer.java b/src/main/java/com/syncleus/aparapi/examples/convolution/ConvolutionViewer.java similarity index 91% rename from samples/convolution/src/com/amd/aparapi/sample/convolution/ConvolutionViewer.java rename to src/main/java/com/syncleus/aparapi/examples/convolution/ConvolutionViewer.java index 00d7d3e1e9936f804a4377488a4dcd02a41a67a2..c5773344fa82f2e8146af1e8fd94f37a6c21e4fe 100644 --- a/samples/convolution/src/com/amd/aparapi/sample/convolution/ConvolutionViewer.java +++ b/src/main/java/com/syncleus/aparapi/examples/convolution/ConvolutionViewer.java @@ -1,3 +1,13 @@ +/** + * This product currently only contains code developed by authors + * of specific components, as identified by the source code files. + * + * Since product implements StAX API, it has dependencies to StAX API + * classes. + * + * For additional credits (generally to people who reported problems) + * see CREDITS file. + */ /* Copyright (c) 2010-2011, Advanced Micro Devices, Inc. All rights reserved. @@ -36,7 +46,7 @@ under those regulations, please refer to the U.S. Bureau of Industry and Securit */ -package com.syncleus.aparapi.sample.convolution; +package com.syncleus.aparapi.examples.convolution; import java.awt.BorderLayout; import java.awt.Color; diff --git a/samples/convolution/src/com/amd/aparapi/sample/convolution/PureJava.java b/src/main/java/com/syncleus/aparapi/examples/convolution/PureJava.java similarity index 88% rename from samples/convolution/src/com/amd/aparapi/sample/convolution/PureJava.java rename to src/main/java/com/syncleus/aparapi/examples/convolution/PureJava.java index 7439a51cde7471a256fff050998a3dffb32734a8..4ac820fb466899725d7770b263fc416eb50dc274 100644 --- a/samples/convolution/src/com/amd/aparapi/sample/convolution/PureJava.java +++ b/src/main/java/com/syncleus/aparapi/examples/convolution/PureJava.java @@ -1,3 +1,13 @@ +/** + * This product currently only contains code developed by authors + * of specific components, as identified by the source code files. + * + * Since product implements StAX API, it has dependencies to StAX API + * classes. + * + * For additional credits (generally to people who reported problems) + * see CREDITS file. + */ /* Copyright (c) 2010-2011, Advanced Micro Devices, Inc. All rights reserved. @@ -36,7 +46,7 @@ under those regulations, please refer to the U.S. Bureau of Industry and Securit */ -package com.syncleus.aparapi.sample.convolution; +package com.syncleus.aparapi.examples.convolution; import java.io.File; @@ -89,7 +99,7 @@ public class PureJava{ } public static void main(final String[] _args) { - File file = new File(_args.length == 1 ? _args[0] : "testcard.jpg"); + File file = new File(_args.length == 1 ? _args[0] : "./src/main/resources/testcard.jpg"); final ImageConvolution convolution = new ImageConvolution(); diff --git a/samples/convolution/src/com/amd/aparapi/sample/convolution/convolution.cl b/src/main/java/com/syncleus/aparapi/examples/convolution/convolution.cl similarity index 100% rename from samples/convolution/src/com/amd/aparapi/sample/convolution/convolution.cl rename to src/main/java/com/syncleus/aparapi/examples/convolution/convolution.cl diff --git a/samples/convolution/knight.png b/src/main/resources/knight.png similarity index 100% rename from samples/convolution/knight.png rename to src/main/resources/knight.png diff --git a/samples/convolution/testcard.jpg b/src/main/resources/testcard.jpg similarity index 100% rename from samples/convolution/testcard.jpg rename to src/main/resources/testcard.jpg