私は勉強のために次のコードを持っています。
私の計算関数は、aparapi で実行すると予期しない結果を生成します。
私のコードまたは aparapi に問題はありますか?
結果は次のとおりです。
Result Num Expected
2026982348 406816880 40681688012
2026982516 406816881 40681688180
2026982594 406816882 40681688258
2026982662 406816883 40681688326
2026982830 406816884 40681688494
2026982898 406816885 40681688562
2026982966 406816886 40681688630
2026983044 406816887 40681688708
2026983212 406816888 40681688876
2026983280 406816889 40681688944
2026983338 406816890 40681689002
2026983506 406816891 40681689170
2026983584 406816892 40681689248
2026983652 406816893 40681689316
2026983820 406816894 40681689484
2026983888 406816895 40681689552
2026983956 406816896 40681689620
2026984134 406816897 40681689798
2026984202 406816898 40681689866
2026984270 406816899 40681689934
編集: executionMode JTP または CPU を設定すると、真の結果 (結果 == 期待値) が得られますが、GPU モードでは問題があります。Windows 10で2013年後半のMacBook Pro Retinaを使用しています。
Edit2: 私の calculate メソッドの戻り行が問題を引き起こします。私が戻ったらLong.MAX_VALUE
、それは動作します。しかし(long) tc * 100
(または((long) tc) * 100
) 与えない (例: 40681688900)