Mercurial > repos > public > sbplib_julia
annotate benchmarkTest.jl @ 81:7f72e7e14659 patch_based_test
Add benchmarktest and mark all apply functions with @inline and @inbounds
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Thu, 24 Jan 2019 14:58:22 +0100 |
parents | |
children | 34fd86e9d0b9 |
rev | line source |
---|---|
81
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
1 include("sbp.jl") |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
2 using BenchmarkTools |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
3 using Profile |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
4 using ProfileView |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
5 |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
6 function benchmarkTest(m,n) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
7 g = sbp.Grid.EquidistantGrid((m,n), (0.0, 0.0), (2pi, 3/2*pi)) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
8 op = sbp.readOperator("d2_4th.txt","h_4th.txt") |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
9 Laplace = sbp.Laplace(g, 1.0, op) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
10 |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
11 init(x,y) = sin(x) + cos(y) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
12 v = sbp.Grid.evalOn(g,init) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
13 |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
14 u = zeros(eltype(v),length(v)) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
15 |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
16 sbp.apply!(Laplace,u,v) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
17 |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
18 @time sbp.apply!(Laplace,u,v) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
19 |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
20 #@benchmark sbp.apply!(Laplace,u,v) |
7f72e7e14659
Add benchmarktest and mark all apply functions with @inline and @inbounds
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
21 end |