Skip to content
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

Mandelbrot example: double precision #569

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

t0b3
Copy link
Contributor

@t0b3 t0b3 commented Jun 2, 2022

add double precision for

  • maxiter: ushort(16) -> uint(32)
  • output: ushort(16) -> uint(32)
  • z, q: complex64 -> complex128
  • real, nreal, imag: float -> double

works fine here

@inducer
Copy link
Owner

inducer commented Jun 2, 2022

Could you explain what the presumed benefit is? An immediate downside is that devices without high-performance double support (Nvidia...) will suffer a decrease in performance. As a result, maybe this should be an option?

@t0b3
Copy link
Contributor Author

t0b3 commented Jun 2, 2022

intend is to

  • extend the demo and explain how high precision can be implemented
  • enable this very example to dive into much lower zoom levels
    code works fine here on budget radeon

@t0b3
Copy link
Contributor Author

t0b3 commented Jun 3, 2022

performance doesn't decrease compared to 32bit
fyi this 64bit code performs fluent on 64bit cpus like

  • 5$ entry level cloud vm cpu
  • raspi4 cpu

@inducer inducer changed the title double precision Mandelbrot example: double precision Jun 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants