You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

TensorBenchmark.cs 1.6 kB

2 years ago
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. using BenchmarkDotNet.Attributes;
  2. namespace TensorFlowBenchmark
  3. {
  4. [SimpleJob(launchCount: 1, warmupCount: 1)]
  5. [MinColumn, MaxColumn, MeanColumn, MedianColumn]
  6. public class TensorBenchmark
  7. {
  8. private double[] data;
  9. [GlobalSetup]
  10. public void Setup()
  11. {
  12. data = new double[100];
  13. }
  14. /*[Benchmark]
  15. public void ScalarTensor()
  16. {
  17. var g = new Graph();
  18. for (int i = 0; i < 100; i++)
  19. {
  20. using (var tensor = new Tensor(17.0))
  21. {
  22. }
  23. }
  24. }
  25. [Benchmark]
  26. public unsafe void TensorFromFixedPtr()
  27. {
  28. var g = new Graph();
  29. for (int i = 0; i < 100; i++)
  30. {
  31. fixed (double* ptr = &data[0])
  32. {
  33. using (var t = new Tensor((IntPtr)ptr, new long[] { data.Length }, tf.float64, 8 * data.Length))
  34. {
  35. }
  36. }
  37. }
  38. }
  39. [Benchmark]
  40. public void TensorFromArray()
  41. {
  42. var g=new Graph();
  43. for (int i = 0; i < 100; i++)
  44. {
  45. using (var tensor = new Tensor(data))
  46. {
  47. }
  48. }
  49. }
  50. [Benchmark]
  51. public void TensorFromNDArray()
  52. {
  53. var g = new Graph();
  54. for (int i = 0; i < 100; i++)
  55. {
  56. using (var tensor = new Tensor(new NDArray(data)))
  57. {
  58. }
  59. }
  60. }*/
  61. }
  62. }