static const std::string value() { return "sum = 0;\n" "for (unsigned int k = (get_group_id(0) * " + main_size() + ")/get_num_groups(0)+ get_local_id(0); k < ((get_group_id(0)+1) * " + main_size() +")/get_num_groups(0); k += get_local_size(0))\n" " sum += " + dot_product<LHS,RHS>::value("k","k") + ";\n" "shared_memory_ptr[get_local_id(0)] = sum;\n" "for (unsigned int stride = get_local_size(0)/2; stride > 0; stride /= 2)\n" " {\n" " barrier(CLK_LOCAL_MEM_FENCE);\n" " if (get_local_id(0) < stride)\n" " shared_memory_ptr[get_local_id(0)] += shared_memory_ptr[get_local_id(0)+stride];\n" " }\n" "barrier(CLK_LOCAL_MEM_FENCE);\n" "if (get_local_id(0) == 0)\n" " " + ASSIGNED::name() + "[get_group_id(0)] = shared_memory_ptr[0];\n"; }
bool QedoController::OnInit() { wxInitAllImageHandlers(); wxSize main_size(800,600); wxPoint main_point(0,0); // Create the main window MainFrame *frame = new MainFrame( wxT("Qedo Controller 0.3") , main_point, main_size); // Problem with generic wxNotebook implementation whereby it doesn't size // properly unless you set the size again #if defined(__WIN16__) || defined(__WXMOTIF__) int width, height; frame->GetSize(& width, & height); frame->SetSize(-1, -1, width, height); #endif frame->Show(); return TRUE; }