-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Performance analysis of FDTD #58
Comments
Example for cprofile import cProfile, pstats
# used to run this test individually
profiler = cProfile.Profile()
profiler.enable()
start = timeit.default_timer()
# (your code)
profiler.disable()
stats = pstats.Stats(profiler).sort_stats("tottime")
stats.print_stats()
stop = timeit.default_timer()
print("Test ran for ", stop - start, " seconds.") |
|
|
@gomezzz try out on GPU |
For later: This may help optimize a lot by doing all frequencies in one run: flaport/fdtd#31 (might need ricker wavelet source) |
Oh also, we overlooked this I think: https://fdtd.readthedocs.io/en/latest/examples/04-performance-profiling.html |
If going with the RMS method for time tomain to frequency domain, I think we can assume that the rms of the free space simulation is the same for all frequencies, reducing the runtime by half |
The simulation is currently 2D. Patterned layer requires 3D. Maybe uniform layer also can be 1D, which will impove runtime |
Closed for now , will reopen when relevant |
Feature
Desired Behavior / Functionality
Figure out what costs us most time, so we can optimize, ideally for
What Needs to Be Done
How Can It Be Tested
N/A
The text was updated successfully, but these errors were encountered: