Open ddale opened 9 years ago
Agreed. For more densely populated samples it may be more efficient to skip the generation stage and load a fixed grid (an npz file perhaps) on orientation space. The machinery is there, we just have to decide where we would store the pretabulated grids
Sent from my iPhone
On Nov 25, 2014, at 9:15 AM, Darren Dale notifications@github.com wrote:
I'm attempting to run find-orientations on a more interesting sample, one with a few hundred orientations as opposed to ~4. It takes about 3.5 minutes before find-orientations gets to the point where it starts multiprocessing on paintGrid. I think the bottleneck is in findorientations.generate_orientation_fibers. An abort yielded:
File "/home/darren/Projects/hexrd/hexrd/findorientations.py", line 130, in generate_orientation_fibers qfib.append(mutil.uniqueVectors(qfib_tmp)) File "/home/darren/Projects/hexrd/hexrd/matrixutil.py", line 530, in uniqueVectors if any(ivSrt[:, col] != ivSrt[:, col -1]): KeyboardInterrupt And inspecting the function, I see:
for i in range(len(pd_hkl_ids)): for ispot in range(numSpots[i]): Seems like a candidate for optimization at some point.
— Reply to this email directly or view it on GitHub.
Darren: the other issue for the seeded approach is not to take too fine of steps on the fiber. Heuristic ally, anything below 0.5 degree steps is probably overkill, and will lead to very large search spaces (>5e6 points) in which case a full grid would be more appropriate.
Sent from my iPhone
On Nov 25, 2014, at 9:15 AM, Darren Dale notifications@github.com wrote:
I'm attempting to run find-orientations on a more interesting sample, one with a few hundred orientations as opposed to ~4. It takes about 3.5 minutes before find-orientations gets to the point where it starts multiprocessing on paintGrid. I think the bottleneck is in findorientations.generate_orientation_fibers. An abort yielded:
File "/home/darren/Projects/hexrd/hexrd/findorientations.py", line 130, in generate_orientation_fibers qfib.append(mutil.uniqueVectors(qfib_tmp)) File "/home/darren/Projects/hexrd/hexrd/matrixutil.py", line 530, in uniqueVectors if any(ivSrt[:, col] != ivSrt[:, col -1]): KeyboardInterrupt And inspecting the function, I see:
for i in range(len(pd_hkl_ids)): for ispot in range(numSpots[i]): Seems like a candidate for optimization at some point.
— Reply to this email directly or view it on GitHub.
Perhaps we should get Oscar involved in optimizing this function?
I'm attempting to run
find-orientations
on a more interesting sample, one with a few hundred orientations as opposed to ~4. It takes about 3.5 minutes beforefind-orientations
gets to the point where it starts multiprocessing onpaintGrid
. I think the bottleneck is infindorientations.generate_orientation_fibers
. An abort yielded:And inspecting the function, I see:
Seems like a candidate for optimization at some point.