Menu

#19 Benchmarks

open
nobody
None
2024-05-02
2024-03-22
Anonymous
No

Originally created by: lucasgrjn

Hey really cool project!

I find this repo after searching about FDTD from this topic. I am searching for a (fast) FDTD engine to play a bit. I was wondering if you had any benchmark between the solver commonly available (aka MEEP or fdtdz). Especially considering the scale multi-CPUs or multi-GPUs.

Thanks and really nice project! :)

Discussion

  • Anonymous

    Anonymous - 2024-03-22

    Originally posted by: paulxshen

    Thanks for reaching out! I haven't done benchmarks yet. We simply use Julia's diff and broadcasted array arithmetic with GPU calls (if used) compiled by CUDA.jl. So it's probably comparable to Meep but slower than fdtdz.

    What system scale are you thinking? For inverse design of typical components less than 10 x 10 um even a single machine is sufficient. From there one would extract the component S parameters used for system simulation. So I don't really see a big need for systems level FDTD which fdtdz caters to except in some 3d metamaterials cases - I could be wrong though.

    Our focus is on ease of use and flexibility wrt inverse design. We're bare bones AD compatible with Zygote.jl w/ no custom adjoints. There's some broken code now - we're fixing our examples and planning a first stable release next week. Afterwards I'm happy to do a quick presentation (live meeting or recorded) for your team if desired.

     
  • Anonymous

    Anonymous - 2024-03-27

    Originally posted by: lucasgrjn

    In my academic work, I mainly play with photonic crystals. Depending on the size, I think you can assimilate them as a meta surface. Or if you try to integrate them, you can end up with large devices...

    Right now, I only investigate the possibilities. But I will keep an eye on the next release!

    Thanks for your complete response!

     
  • Anonymous

    Anonymous - 2024-03-29

    Originally posted by: paulxshen

    Got it that makes sense. There's also the commercial package Tidy3D which can also handle massive scale but doing AD with backend hidden in the cloud is maybe not easy.. I pushed a new release and documented the tutorials on project site. It's still in alpha and likely buggy - I'm happy to help write a test script if you wanna try something out. Using Float16 on gpu should help

     
  • Anonymous

    Anonymous - 2024-05-02

    Originally posted by: paulxshen

    I thought Meep had a GPU variant but officially no. Assuming Meep stays CPU only, our GPU implementation should be faster, though not as fast as a bespoke GPU implementation like fdtdz which is more feature restrictive.

     

Log in to post a comment.

MongoDB Logo MongoDB