Révision 111 Epidevomath/vector8.py
vector8.py (revision 111) | ||
---|---|---|
3 | 3 |
import pyopencl.array as cl_array |
4 | 4 |
from numpy.random import randint as nprnd |
5 | 5 |
|
6 |
deviceID = 0 |
|
7 | 6 |
platformID = 0 |
7 |
deviceID = 1 |
|
8 | 8 |
workGroup=(1,1) |
9 | 9 |
|
10 |
N = 32768
|
|
10 |
N = 16384
|
|
11 | 11 |
MyData = np.zeros(N, dtype=cl_array.vec.float8) |
12 | 12 |
|
13 | 13 |
dev = cl.get_platforms()[platformID].get_devices()[deviceID] |
... | ... | |
151 | 151 |
|
152 | 152 |
print 'Tous au meme endroit',MyData |
153 | 153 |
|
154 |
MyRoutines.SplutterSpace(queue, (N,1), None, clData, numpy.uint32(nprnd(2**32)),numpy.uint32(nprnd(2**32)))
|
|
154 |
MyRoutines.SplutterSpace(queue, (N,1), None, clData, np.uint32(nprnd(2**32)),np.uint32(nprnd(2**32)))
|
|
155 | 155 |
|
156 | 156 |
cl.enqueue_copy(queue, MyData, clData) |
157 | 157 |
|
158 | 158 |
print 'Tous distribues',MyData |
159 | 159 |
|
160 |
MyRoutines.ExtendSegment(queue, (N,1), None, clData,numpy.uint32(nprnd(2**32)),numpy.uint32(nprnd(2**32)))
|
|
160 |
MyRoutines.ExtendSegment(queue, (N,1), None, clData,np.uint32(nprnd(2**32)),np.uint32(nprnd(2**32)))
|
|
161 | 161 |
|
162 | 162 |
cl.enqueue_copy(queue, MyData, clData) |
163 | 163 |
|
164 | 164 |
print 'Tous avec leur extremite',MyData |
165 | 165 |
|
166 |
MySize = np.zeros(len(MyData), dtype=numpy.float32)
|
|
166 |
MySize = np.zeros(len(MyData), dtype=np.float32)
|
|
167 | 167 |
clSize = cl.Buffer(ctx, mf.READ_WRITE, MySize.nbytes) |
168 | 168 |
|
169 | 169 |
MyRoutines.EstimateLength(queue, (N,1), None, clData, clSize) |
... | ... | |
171 | 171 |
|
172 | 172 |
print 'La distance de chacun avec son extremite',MySize |
173 | 173 |
|
174 |
MyDistance = np.zeros(len(MyData)*len(MyData), dtype=numpy.float32)
|
|
174 |
MyDistance = np.zeros(len(MyData)*len(MyData), dtype=np.float32)
|
|
175 | 175 |
clDistance = cl.Buffer(ctx, mf.READ_WRITE, MyDistance.nbytes) |
176 | 176 |
|
177 | 177 |
MyRoutines.ShortestDistance(queue, (N,N), None, clData, clDistance) |
178 | 178 |
cl.enqueue_copy(queue, MyDistance, clDistance) |
179 | 179 |
|
180 |
MyDistance=numpy.reshape(MyDistance,(N,N))
|
|
180 |
MyDistance=np.reshape(MyDistance,(N,N))
|
|
181 | 181 |
|
182 | 182 |
print 'La distance de chacun',MyDistance |
183 | 183 |
|
Formats disponibles : Unified diff