FrontISTR 5.2.0
Large-scale structural analysis program with finit element method
Loading...
Searching...
No Matches
hecmw_tuning_fx.f90
Go to the documentation of this file.
1!-------------------------------------------------------------------------------
2! Copyright (c) 2019 FrontISTR Commons
3! This software is released under the MIT License, see LICENSE.txt
4!-------------------------------------------------------------------------------
5
7 use hecmw_util
8 implicit none
9
10 private
11
13
14 !!
15 !! Please set TotalSectorCacheSize to
16 !! (on K-computer) : 12
17 !! (on FX10) : 24
18 !!
19 integer, parameter :: TotalSectorCacheSize = 12
20
21contains
22
23 subroutine hecmw_tuning_fx_calc_sector_cache( N, NDOF, &
24 sectorCacheSize0, sectorCacheSize1 )
25 implicit none
26 integer(kind=kint), intent(in) :: n, ndof
27 integer(kind=kint), intent(out) :: sectorcachesize0, sectorcachesize1
28 ! calculate sector cache size
29 sectorcachesize1 = int((dble(n) * ndof * kreal / (4096 * 128)) + 0.999)
30 if (sectorcachesize1 > totalsectorcachesize / 2 ) &
31 sectorcachesize1 = totalsectorcachesize / 2
32 sectorcachesize0 = totalsectorcachesize - sectorcachesize1
33 ! write(*,*) 'Vector size =', N * NDOF * kreal, '[byte] ', &
34 ! 'sectorCache0 =', sectorCacheSize0, '[way] ', &
35 ! 'sectorCache1 =', sectorCacheSize1, '[way]'
37
38end module hecmw_tuning_fx
subroutine, public hecmw_tuning_fx_calc_sector_cache(n, ndof, sectorcachesize0, sectorcachesize1)
I/O and Utility.
Definition: hecmw_util_f.F90:7
integer(kind=4), parameter kreal