Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
docking
ocladock-fpga
Commits
824eb416
Commit
824eb416
authored
Nov 10, 2018
by
Leonardo Solis
Browse files
#31, krnl_GA: added write-only arg (final pops) + corrected initial-pop arg to read-only
This one runs correctly in terms of docking, yay
parent
d1529db6
Changes
2
Show whitespace changes
Inline
Side-by-side
ofdock_taskpar_xl/device/Krnl_GA.cl
View file @
824eb416
...
...
@@ -222,7 +222,8 @@ __kernel __attribute__ ((max_global_work_dim(0)))
*/
__kernel
__attribute__
((
reqd_work_group_size
(
1
,
1
,
1
)))
void
Krnl_GA
(
__global
float*
restrict
GlobPopulationCurrent,
__global
const
float*
restrict
GlobPopulationCurrentInitial,
__global
float*
restrict
GlobPopulationCurrentFinal,
__global
float*
restrict
GlobEnergyCurrent,
__global
unsigned
int*
restrict
GlobEvals_performed,
__global
unsigned
int*
restrict
GlobGens_performed,
...
...
@@ -264,7 +265,8 @@ void Krnl_GA(
__local
float
LocalPopCurr[MAX_POPSIZE][ACTUAL_GENOTYPE_LENGTH]
;
__local
float
LocalEneCurr[MAX_POPSIZE]
;
__global
float*
GlobPopCurr
=
&
GlobPopulationCurrent
[Host_Offset_Pop]
;
__global
const
float*
GlobPopCurrInitial
=
&
GlobPopulationCurrentInitial
[Host_Offset_Pop]
;
__global
float*
GlobPopCurrFinal
=
&
GlobPopulationCurrentFinal
[Host_Offset_Pop]
;
__global
float*
GlobEneCurr
=
&
GlobEnergyCurrent
[Host_Offset_Ene]
;
//
------------------------------------------------------------------
...
...
@@ -283,7 +285,7 @@ void Krnl_GA(
LOOP_FOR_GA_IC_INNER_WRITE_GENOTYPE:
for
(
uchar
gene_cnt=0
; gene_cnt<DockConst_num_of_genes; gene_cnt++) {
float
tmp_ic
;
tmp_ic
=
GlobPopCurr[pop_cnt*ACTUAL_GENOTYPE_LENGTH
+
gene_cnt]
;
tmp_ic
=
GlobPopCurr
Initial
[pop_cnt*ACTUAL_GENOTYPE_LENGTH
+
gene_cnt]
;
LocalPopCurr[pop_cnt][gene_cnt
&
MASK_GENOTYPE]
=
tmp_ic
;
write_pipe_block
(
chan_IC2Conf_genotype,
&tmp_ic
)
;
...
...
@@ -856,7 +858,7 @@ void Krnl_GA(
__attribute__
((
xcl_pipeline_loop
))
LOOP_GA_WRITEPOP2DDR_INNER:
for
(
uchar
gene_cnt=0
; gene_cnt<DockConst_num_of_genes; gene_cnt++) {
GlobPopCurr[pop_cnt*ACTUAL_GENOTYPE_LENGTH
+
gene_cnt]
=
LocalPopCurr[pop_cnt][gene_cnt
&
MASK_GENOTYPE]
;
GlobPopCurr
Final
[pop_cnt*ACTUAL_GENOTYPE_LENGTH
+
gene_cnt]
=
LocalPopCurr[pop_cnt][gene_cnt
&
MASK_GENOTYPE]
;
}
GlobEneCurr[pop_cnt]
=
LocalEneCurr[pop_cnt]
;
...
...
ofdock_taskpar_xl/host/src/performdocking.cpp
View file @
824eb416
...
...
@@ -388,8 +388,12 @@ filled with clock() */
// functions.
// Krnl_GA buffers
cl
::
Buffer
mem_dockpars_conformations_current
(
context
,
CL_MEM_USE_HOST_PTR
|
CL_MEM_READ_WRITE
,
cl
::
Buffer
mem_dockpars_conformations_current_Initial
(
context
,
CL_MEM_USE_HOST_PTR
|
CL_MEM_READ_ONLY
,
size_populations_nbytes
,
cpu_init_populations
.
data
());
cl
::
Buffer
mem_dockpars_conformations_current_Final
(
context
,
CL_MEM_USE_HOST_PTR
|
CL_MEM_WRITE_ONLY
,
size_populations_nbytes
,
cpu_final_populations
.
data
());
cl
::
Buffer
mem_dockpars_energies_current
(
context
,
CL_MEM_USE_HOST_PTR
|
CL_MEM_WRITE_ONLY
,
size_energies_nbytes
,
cpu_energies
.
data
());
cl
::
Buffer
mem_evals_performed
(
context
,
CL_MEM_USE_HOST_PTR
|
CL_MEM_WRITE_ONLY
,
...
...
@@ -463,7 +467,7 @@ filled with clock() */
std
::
vector
<
cl
::
Memory
>
inBufVec
,
outBufVec
;
// Krnl_GA
inBufVec
.
push_back
(
mem_dockpars_conformations_current
);
// RD & WR
inBufVec
.
push_back
(
mem_dockpars_conformations_current
_Initial
);
// Krnl_Conform
inBufVec
.
push_back
(
mem_KerConstStatic_rotlist_const
);
inBufVec
.
push_back
(
mem_KerConstStatic_ref_coords_const
);
...
...
@@ -488,8 +492,8 @@ filled with clock() */
inBufVec
.
push_back
(
mem_KerConstStatic_dspars_V_const
);
// Krnl_GA
outBufVec
.
push_back
(
mem_dockpars_conformations_current
);
// RD & WR
outBufVec
.
push_back
(
mem_dockpars_energies_current
);
// WR
outBufVec
.
push_back
(
mem_dockpars_conformations_current
_Final
);
outBufVec
.
push_back
(
mem_dockpars_energies_current
);
outBufVec
.
push_back
(
mem_evals_performed
);
outBufVec
.
push_back
(
mem_gens_performed
);
...
...
@@ -506,7 +510,8 @@ filled with clock() */
int
narg
;
#ifdef ENABLE_KRNL_GA
narg
=
0
;
kernel_ga
.
setArg
(
narg
++
,
mem_dockpars_conformations_current
);
kernel_ga
.
setArg
(
narg
++
,
mem_dockpars_conformations_current_Initial
);
kernel_ga
.
setArg
(
narg
++
,
mem_dockpars_conformations_current_Final
);
kernel_ga
.
setArg
(
narg
++
,
mem_dockpars_energies_current
);
kernel_ga
.
setArg
(
narg
++
,
mem_evals_performed
);
kernel_ga
.
setArg
(
narg
++
,
mem_gens_performed
);
...
...
@@ -825,9 +830,9 @@ filled with clock() */
unsigned
short
ushort_run_cnt
=
(
unsigned
ushort
)
run_cnt
;
unsigned
int
Host_Offset_Pop
=
run_cnt
*
dockpars
.
pop_size
*
ACTUAL_GENOTYPE_LENGTH
;
unsigned
int
Host_Offset_Ene
=
run_cnt
*
dockpars
.
pop_size
;
kernel_ga
.
setArg
(
1
6
,
ushort_run_cnt
);
kernel_ga
.
setArg
(
1
7
,
Host_Offset_Pop
);
kernel_ga
.
setArg
(
1
8
,
Host_Offset_Ene
);
kernel_ga
.
setArg
(
1
7
,
ushort_run_cnt
);
kernel_ga
.
setArg
(
1
8
,
Host_Offset_Pop
);
kernel_ga
.
setArg
(
1
9
,
Host_Offset_Ene
);
#endif
#ifdef ENABLE_KRNL_CONFORM
...
...
Leonardo Solis
@solis
mentioned in commit
b6e7e602
·
Jan 04, 2021
mentioned in commit
b6e7e602
mentioned in commit b6e7e602c1ae4b086baa7a856485fbc63d9c9147
Toggle commit list
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment