|
|
Message-ID: <CABob6ipLyrVccXCvkdsq2Z3=+=jgriqWRWwdMw=W+4_rQUy1wg@mail.gmail.com>
Date: Tue, 9 Jul 2013 09:26:03 +0200
From: Lukas Odzioba <lukas.odzioba@...il.com>
To: john-dev@...ts.openwall.com
Subject: LWS/GWS setup best practice
magnum, Claudio:
1) Where I can find current best practice in implementing LWS/GWS
setup and gpu buffers management?
I looked at some files but and there are many versions of that.
2) In common-opencl.h we have 4 versions of opencl_init:
void opencl_init_dev(unsigned int sequential_id);
void opencl_init(char *kernel_filename, unsigned int sequential_id);
void opencl_init_opt(char *kernel_filename, unsigned int
sequential_id, char *options);
void opencl_init_auto_setup(
int p_default_value, int p_hash_loops, int p_number_of_events,
int * p_split_events, const char ** p_warnings,
cl_event * p_to_profile_event, struct fmt_main * p_self,
void (*p_create_clobj)(int gws, struct fmt_main * self),
void (*p_release_clobj)(void), int p_buffer_size, size_t p_gws_limit);
The top 3:
void opencl_init_dev(unsigned int sequential_id)
{
profilingEvent = firstEvent = lastEvent = NULL;
dev_init(sequential_id);
}
void opencl_init_opt(char *kernel_filename, unsigned int
sequential_id, char *opts)
{
kernel_loaded=0;
opencl_init_dev(sequential_id);
opencl_build_kernel_save(kernel_filename, sequential_id, opts, 1, 0);
}
void opencl_init(char *kernel_filename, unsigned int sequential_id)
{
opencl_init_opt(kernel_filename, sequential_id, NULL);
}
could be merged into sth like:
void opencl_init_opt(char *kernel_filename, unsigned int
sequential_id, char *opts){
profilingEvent = firstEvent = lastEvent = NULL;
dev_init(sequential_id);
if(!kernel_filename){
kernel_loaded=0;
opencl_build_kernel_save(kernel_filename, sequential_id, opts, 1, 0);
}
}
Lukas
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.