71 | | == Defining a custom plan class == |
72 | | |
73 | | If your application has properties that differ from any of the pre-defined classes, |
74 | | you can modify them, or better yet define your own. |
75 | | |
76 | | To define a new NVIDIA/CUDA plan class, add a new clause |
77 | | to '''app_plan_cuda()''' in sched/sched_customize.cpp. |
78 | | For example, the plan class '''cuda23''' is defined by: |
79 | | |
80 | | {{{ |
81 | | ... |
82 | | if (!strcmp(plan_class, "cuda23")) { |
83 | | if (!cuda_check(c, hu, |
84 | | 100, // minimum compute capability (1.0) |
85 | | 200, // max compute capability (2.0) |
86 | | 2030, // min CUDA version (2.3) |
87 | | 19500, // min display driver version (195.00) |
88 | | 384*MEGA, // min video RAM |
89 | | 1., // # of GPUs used (may be fractional, or an integer > 1) |
90 | | .01, // fraction of FLOPS done by the CPU |
91 | | .21 // estimated GPU efficiency (actual/peak FLOPS) |
92 | | )) { |
93 | | return false; |
94 | | } |
95 | | } |
96 | | }}} |
97 | | |
98 | | To define a new ATI/CAL plan class, add a new clause |
99 | | to '''app_plan_ati()'''. |
100 | | For example: |
101 | | {{{ |
102 | | if (!strcmp(plan_class, "ati14")) { |
103 | | if (!ati_check(c, hu, |
104 | | 1004000, // min display driver version (10.4) |
105 | | false, // require libraries named "ati", not "amd" |
106 | | 384*MEGA, // min video RAM |
107 | | 1., // # of GPUs used (may be fractional, or an integer > 1) |
108 | | .01, // fraction of FLOPS done by the CPU |
109 | | .21 // estimated GPU efficiency (actual/peak FLOPS) |
110 | | )) { |
111 | | return false; |
112 | | } |
113 | | } |
114 | | }}} |
115 | | |
116 | | To define a new OpenCL plan class, add a new clause to |
117 | | '''app_plan_opencl()'''. |
118 | | For example: |
119 | | |
120 | | {{{ |
121 | | if (!strcmp(plan_class, "opencl_nvidia_101")) { |
122 | | return opencl_check( |
123 | | c, hu, |
124 | | 101, // OpenCL version (1.1) |
125 | | 256*MEGA, // min video RAM |
126 | | 1, // # of GPUs used |
127 | | .1, // fraction of FLOPS done by the CPU |
128 | | .21 // estimated GPU efficiency (actual/peak FLOPS) |
129 | | ); |
130 | | } |
131 | | }}} |