# Workstation advice (for mostly Julia use)

**URL:** <https://discourse.julialang.org/t/workstation-advice-for-mostly-julia-use/25395>\
**Category:** Offtopic\
**Tags:** question\
**Created:** [June 18, 2019, 9:18am UTC](https://discourse.julialang.org/t/workstation-advice-for-mostly-julia-use/25395 "2019-06-18T09:18:37Z")\
**Posts on this page:** 1\
**Showing post:** 13

<div class="post-metadata">

**Author:** ![cscherrer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cscherrer/32/7631_2.png) [@cscherrer](https://discourse.julialang.org/u/cscherrer)\
**Post date:** [June 20, 2019, 5:09pm UTC](https://discourse.julialang.org/t/workstation-advice-for-mostly-julia-use/25395/13 "2019-06-20T17:09:34Z")

</div>

> [@Elrod](#):
>
> you could try benchmarking the vectorized `pow` functions [here](https://discourse.julialang.org/t/slow-arbitrary-base-exponentiation-a-b/25386/19)

```julia
julia> @benchmark directexp!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 17.050 μs (0.00% GC)
  median time: 17.120 μs (0.00% GC)
  mean time: 17.461 μs (0.00% GC)
  maximum time: 49.566 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 1

julia> @benchmark cobexp!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 23.517 μs (0.00% GC)
  median time: 25.084 μs (0.00% GC)
  mean time: 27.077 μs (0.00% GC)
  maximum time: 114.213 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 1

julia> @benchmark syspow!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 15.135 μs (0.00% GC)
  median time: 15.856 μs (0.00% GC)
  mean time: 16.032 μs (0.00% GC)
  maximum time: 56.076 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 1

julia> @benchmark jsleefpow!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 16.094 μs (0.00% GC)
  median time: 16.188 μs (0.00% GC)
  mean time: 16.904 μs (0.00% GC)
  maximum time: 76.149 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 1

julia> @benchmark csleefpow!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 11.834 μs (0.00% GC)
  median time: 12.207 μs (0.00% GC)
  mean time: 13.216 μs (0.00% GC)
  maximum time: 63.291 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 1

julia> @benchmark xsimdpow!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 6.904 μs (0.00% GC)
  median time: 6.982 μs (0.00% GC)
  mean time: 7.218 μs (0.00% GC)
  maximum time: 26.691 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 5

julia> @benchmark jsleefpowcob!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 7.863 μs (0.00% GC)
  median time: 8.010 μs (0.00% GC)
  mean time: 8.409 μs (0.00% GC)
  maximum time: 28.134 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 4

julia> @benchmark csleefpowcob!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 5.140 μs (0.00% GC)
  median time: 5.274 μs (0.00% GC)
  mean time: 5.662 μs (0.00% GC)
  maximum time: 25.680 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 6

julia> @benchmark xsimdpowcob!($c, $a, $b)
BenchmarkTools.Trial: 
  memory estimate: 0 bytes
  allocs estimate: 0
  --------------
  minimum time: 5.515 μs (0.00% GC)
  median time: 5.578 μs (0.00% GC)
  mean time: 5.756 μs (0.00% GC)
  maximum time: 17.309 μs (0.00% GC)
  --------------
  samples: 10000
  evals/sample: 6

```

---

_[View the full topic](https://discourse.julialang.org/t/workstation-advice-for-mostly-julia-use/25395)._
