• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

stillwater-sc / universal / 29661073235
85%
master: 84%

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Ran 18 Jul 2026 09:51PM UTC
Jobs 1
Files 695
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

18 Jul 2026 09:09PM UTC coverage: 84.681% (-0.01%) from 84.695%
29661073235

push

github

web-flow
feat(efloat): high-precision Mandelbrot deep-zoom demonstration (#1098) (#1147)

* feat(efloat): high-precision Mandelbrot deep-zoom demonstration (#1098)

Adds applications/precision/adaptive/high_precision_fractals.cpp: renders a
deep-zoom Mandelbrot view (z=z^2+c) with the SAME templated escape-time kernel
on double vs efloat<8> (256-bit) coordinates.

At the chosen zoom the pixel spacing (dx ~ 3.75e-17) is ~0.34 of a double ulp at
these coordinates, so double cannot give adjacent pixels distinct coordinates:
~2/3 of the columns/rows collapse onto their neighbour and the image degrades
into blocky streaks. efloat computes every coordinate exactly and resolves the
true structure. The program prints a quantitative summary -- ~75% of double
pixels disagree with the efloat oracle -- and writes mandelbrot_double.ppm and
mandelbrot_efloat.ppm (binary P6, classic smooth palette). Verified visually:
the efloat image shows coherent fractal filaments, the double image is broken
into horizontal blocks.

Iterates on real/imag efloat parts directly (avoids std::complex<efloat>, which
is UB for non-standard types). Default view renders in ~2 s; constants at the
top scale up the resolution. Adds applications/precision/adaptive/README.md per
the acceptance criteria. No CMake change: the adaptive glob (#1096) auto-builds
it as adaptive_high_precision_fractals. Builds and runs on gcc 13.3.0 and
clang 18.1.3.

Resolves #1098

* fix(efloat): address CodeRabbit review on the fractal demo (#1147)

- add <algorithm>/<cstdlib>/<exception> (std::min/max, EXIT_*, std::exception)
- escape-radius test stays in Real instead of casting to double, so an efloat
  magnitude just above 4 is not rounded down and does not escape one iter late
- enable exceptions on the PPM ofstream so I/O errors propagate to the catch
- correct the axis description: dx is ~0.34 ulp at CENTER_X but ~1.35 ulp at
  CENTER_Y (smaller binade), so only the x coordinates collapse -> vertical
  bands, not ro... (continued)

49465 of 58413 relevant lines covered (84.68%)

7039043.15 hits per line

Coverage Regressions

Lines Coverage ∆ File
8
93.95
-0.47% include/sw/universal/number/cfloat/cfloat_impl.hpp
Jobs
ID Job ID Ran Files Coverage
1 29661073235.1 18 Jul 2026 09:51PM UTC 695
84.68
GitHub Action Run
Source Files on build 29661073235
  • Tree
  • List 695
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29661073235
  • d9e141d2 on github
  • Prev Build on main (#29658910751)
  • Next Build on main (#29665597815)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc