并行计算

在编译.jomp文件过程中,出现如下问题:

Exception in thread "main" java.lang.NoClassDefFoundError: jomp/compiler/jomp caused by :java.lang.classnotfoundexception: jomp.compiler.jomp

 

原因在于找不到包,但是已经将jomp。jar导入,并且已经在用户变量配置好classpath,而且java文件可以顺利运行,为什么不行呢?原因我也不知道,但是可以这样解决,在系统变量再配置一次classpath,即可顺利运行。

 

 

具体步骤如下:

  1. 下载jomp1.0b.jar

  http://www2.epcc.ed.ac.uk/computing/research_activities/jomp/index_1.html

  2. 将jomp1.0b.jar部署到JDK的lib下,然后追加到CLASSPATH。(注意:必须是系统变量)  

  3. 编写测试代码TestJavaOpenMP.jomp。扩展名必须为jomp。

  import java.util.*;

  public class TestJavaOpenMP

  {

  public static void main(String[] args)

  {

  int i;

  //omp parallel for

  for(i = 0; i < 20; i++)

  {

  System.out.println("i = " + i);

  }

  }

  }

  4. 由jomp 生成java文件:

  java jomp.compiler.Jomp TestJavaOpenMP

  生成TestJavaOpenMP.java文件。

  5. 编译TestJavaOpenMP.java:

  javac TestJavaOpenMP.java. 生成TestJavaOpenMP.class文件

  6. 运行:

  java -Djomp.threads=2 TestJavaOpenMP

     即可。

你可能感兴趣的:(Java,JDK,thread,HTML)