Блог пользователя nor

Автор nor, 6 месяцев назад, По-английски

Hi!

I started a blog recently, and one of my recent discussions on FFT led me to post a new blog post at https://nor-blog.codeberg.page/posts/2024-06-01-implementing-fft/ exploring some FFT algorithms — more specifically, alternate (potentially better) implementations that not many people are aware of. The contents of this post might be a bit well-known to people who write their own FFT templates, but having a good understanding of FFT should help others too.


Why a new blog?
  • Проголосовать: нравится
  • +93
  • Проголосовать: не нравится

»
6 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

nor orz

»
6 месяцев назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

nor : Is there any reason why your page doesn't have an explicit comment section? I loved your blog on C++ lambdas btw ;)

I mean probably DISQUS is easiest to set up and requires auth (if you want to enforce), so I don't think there would be many spam messages either.

  • »
    »
    6 месяцев назад, # ^ |
    Rev. 2   Проголосовать: нравится +20 Проголосовать: не нравится

    Hi! I'm glad you liked the post and hope you learnt something new from it.

    On comments
»
6 месяцев назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

I thought I had lost your blogs forever! the web archive didn't open spoilers in your blogs either. Happy to see them again on your website :) nor orz

»
6 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

great work

»
6 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Thank you for you blog! In 1975G - Zimpha Fan Club my solution 262609849 literally took 11952 ms out of TL = 12000 ms, so I'm really interested in having a much faster FFT in my weaponry.

  • »
    »
    6 месяцев назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    In that case, I highly recommend looking at the AtCoder Library convolution implementation — it does a radix 4 transform instead of radix 2, which makes it quite fast. Note that removing the bit reversal will show results when your implementation is already decently optimized, and you can already go very far without resorting to SIMD.