0+00Platform · Async
Start the long job. Keep working.
In Surveyor, opening, importing, converting, classifying, registering and exporting run as background jobs, with real progress and a cancel that cleans up after itself. Projects come back after a crash, and CAD writes every edit to its journal without making you wait.
- Background jobs
- 9kindsOpen, import, convert, classify, register, photogrammetry, inspect, export, Add Scans
- Exports
- AtomicWritten to a temporary file, published only when complete
- After a crash
- ReplayedInterrupted work marked, completed work restored on open
- CAD recovery
- 10minCheckpoints, on top of every edit journaled in the background
1+00Background jobs
The heavy work runs beside you.
Each long job in Surveyor runs on its own worker or in its own process and reports back as it goes: live progress first, then a result that says what was actually written.
-
Open, import, add scans
Opening a dataset, importing a Trimble project and adding scans to a registration each run as a job.
-
Convert in its own process
Conversion runs in a separate process with live progress, so a conversion that fails doesn't take Surveyor down with it.
-
Classify, register, reconstruct
Classification, registration, photogrammetry and inspection run as jobs that report their progress as they go.
-
Exports that report the truth
Exports run on their own worker and finish by reporting the points and scans actually written, not the ones requested.
2+00Cancel
Cancel leaves nothing half-written.
An export checks for cancel at every node, writes to a temporary file and publishes the deliverable only when it is complete. Cleaning up removes the job's own files and never one of yours.
-
Imports clean up after themselves
A Trimble import always removes its partial file, and Add Scans removes what it wrote when it stops early.
-
Flushed before it is final
Files are flushed to disk before they are renamed into place, so a power cut can't leave half a file under a finished file's name.
3+00Crash safety
Projects that come back after a crash.
Surveyor, Collector and CAD keep a journal of every step in the project. When a project opens after a crash, interrupted operations are marked abandoned, stray files are set aside and completed work is replayed. More on the journal
4+00CAD
Editing never waits for saving.
CAD writes each edit to the project journal on a background thread. Save, close and exit flush the journal first, and a recovery checkpoint is written every 10 minutes. If the machine itself fails, edits from the last moment, normally under a second, may not have been written yet.
-
Save As in the background
Writing a drawing out to a file runs in the background and can be cancelled.
-
Progress with counts
CAD's long jobs report their stage, a message and how many items are done out of how many.
5+00On the GPU
Streaming and compute that share the frame.
The engine schedules its own work so that loading, uploading and computing never pile into one frame.
-
Streaming in priority order
Sixteen loader threads fetch the parts of the scan in view first.
-
Uploads that wait their turn
Each frame uploads at most 512 tiles or 512 MB, and the rest queue for the next.
-
Compute on a budget
Compute jobs run on their own GPU queue when the card offers one, inside a time budget each frame, 2 ms by default, with up to 1,024 waiting their turn.
6+00Puck
Big plan sets open by the page.
Puck reads large PDFs in ranges instead of all at once: a 305 MB, 124-page plan set opened after reading about 9 MB of it. Parsing and OCR run in background workers, and AI extraction and conversion report their progress stage by stage.
Platform
The rest of the platform.
- PGC Core The engine One native engine under every app, measured on public data.
- Measured Speed 13 billion points of public lidar, timed in Surveyor.
- .pgc2 · .pgsvy · .pgci File formats Scans, projects and photos that keep the survey together.
- Background jobs Async Long jobs beside you, and projects that survive a crash.
- Command line Headless Conversion and GNSS processing without a window.