mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2024-12-22 12:23:56 +01:00
Done with splitting doc.
This commit is contained in:
parent
1640eb60f9
commit
b01c7c306b
@ -371,7 +371,7 @@ include situations where one wants to apply updates to a square submatrix of the
|
||||
full matrix.
|
||||
It takes advantage of memory aligned data and assumes no data dependencies
|
||||
inside the loops. The loops are fully vectorised whenever ~Dim~ is an integer
|
||||
multiple of ~SIMD_LEGTH~.
|
||||
multiple of ~SIMD_LENGTH~.
|
||||
#+begin_src c :tangle (eval c) :comments org
|
||||
qmckl_exit_code qmckl_sm_naive_hpc(
|
||||
const qmckl_context context,
|
||||
@ -525,9 +525,9 @@ text="""
|
||||
result = []
|
||||
for Dim in <<kernel_generator_range>>:
|
||||
Dim=str(Dim)
|
||||
result.append(text.replace("{Dim}",Dim) )
|
||||
result.append(text.replace("{Dim}",Dim))
|
||||
|
||||
return '\n'.join(result)
|
||||
return ''.join(result)
|
||||
#+end_src
|
||||
|
||||
Python script that generated C switch cases that call individual kernel instances.
|
||||
@ -541,14 +541,13 @@ case {Dim}:
|
||||
Updates_index,
|
||||
breakdown,
|
||||
Slater_inv,
|
||||
determinant);
|
||||
"""
|
||||
determinant);"""
|
||||
result = []
|
||||
for Dim in <<kernel_generator_range>>:
|
||||
Dim=str(Dim)
|
||||
result.append(text.replace("{Dim}",Dim) )
|
||||
result.append(text.replace("{Dim}",Dim))
|
||||
|
||||
return '\n'.join(result)
|
||||
return ''.join(result)
|
||||
#+end_src
|
||||
|
||||
#+begin_src c :tangle (eval c) :comments org :noweb yes
|
||||
@ -1225,7 +1224,7 @@ for Dim in <<kernel_generator_range>>:
|
||||
Dim=str(Dim)
|
||||
result.append(text.replace("{Dim}",Dim) )
|
||||
|
||||
return '\n'.join(result)
|
||||
return ''.join(result)
|
||||
#+end_src
|
||||
|
||||
#+NAME:slagel_splitting_switch-case_generator
|
||||
@ -1244,14 +1243,13 @@ case {Dim}: {
|
||||
later,
|
||||
determinant);
|
||||
break;
|
||||
}
|
||||
"""
|
||||
}"""
|
||||
result = []
|
||||
for Dim in <<kernel_generator_range>>:
|
||||
Dim=str(Dim)
|
||||
result.append(text.replace("{Dim}",Dim) )
|
||||
|
||||
return '\n'.join(result)
|
||||
return ''.join(result)
|
||||
#+end_src
|
||||
|
||||
#+begin_src c :tangle (eval c) :comments org :noweb yes
|
||||
@ -1603,10 +1601,10 @@ qmckl_exit_code qmckl_sm_splitting (
|
||||
double* determinant );
|
||||
#+end_src
|
||||
|
||||
#+CALL: generate_c_header(table=qmckl_sm_splitting_args,rettyp=get_value("CRetType"),fname="qmckl_sm_splitting_hpc")
|
||||
#+CALL: generate_private_c_header(table=qmckl_sm_splitting_args,rettyp=get_value("CRetType"),fname="qmckl_sm_splitting_hpc")
|
||||
|
||||
#+RESULTS:
|
||||
#+begin_src c :tangle (eval h_func) :comments org
|
||||
#+begin_src c :tangle (eval h_private_func) :comments org
|
||||
qmckl_exit_code qmckl_sm_splitting_hpc (
|
||||
const qmckl_context context,
|
||||
const uint64_t LDS,
|
||||
|
Loading…
Reference in New Issue
Block a user