NativeBIM by NativeCAD

NativeBIM / Demos / Corpus sweep

NativeBIM by NativeCAD

IFC corpus sweep: every public file opened

Each file in the public test corpus is opened through every layer of NativeBIM: the reader, the model graph, the semantics, units, placements, the cross-schema layer and geometry. Each file runs in its own process with a time and memory budget, and the rule is that nothing crashes, hangs or runs out of memory.

Run on on Node v24.13.0, win32 x64, 16 CPUs, with a 120 s and 2,048 MB budget per file, by tools/bench/sweep.js (method). Full result: sweep-public-2026-10-23.json.

Result

0 / 0 / 0crashes, hangs and out-of-memory exits across 61 filesSwept with tools/bench/sweep.js (method)
1,253.3 MBof IFC read: 22,696,611 records, 91,838 of 91,838 products walkedSwept with tools/bench/sweep.js (method)
10 + 51files clean, and files that raise coded warnings about their own content (a duplicate property set name, a missing unit); 0 uncodedSwept with tools/bench/sweep.js (method)
66,957products drawn with geometry out of 89,136 evaluated; 22,132 have no shape in the file, 0 are drawn approximately, and none fail silentlySwept with tools/bench/sweep.js (method)

By schema

SchemaFilesSizeRecordsCleanCoded warningsCrash, hang, OOMSource
IFC2X3341,216.3 MB22,450,8599250Swept with tools/bench/sweep.js (method)
IFC41730.5 MB240,3861160Swept with tools/bench/sweep.js (method)
IFC4X3_ADD2106.5 MB5,3660100Swept with tools/bench/sweep.js (method)

What the files raise

Every warning has a code from the NativeBIM error vocabulary, so an assistant can tell a file problem from a software problem. These are the codes the reader and model graph raised, by how many files raise each.

CodeSeverityFilesCountSource
NB_UNITS_ANGLE_DEFAULTwarn3131Swept with tools/bench/sweep.js (method)
NB_MODEL_SHARED_PROPERTYinfo2413,845Swept with tools/bench/sweep.js (method)
NB_CONTEXT_MULTIPLE_3Dinfo1010Swept with tools/bench/sweep.js (method)
NB_UNITS_VOLUME_DEFAULTwarn88Swept with tools/bench/sweep.js (method)
NB_MODEL_DUP_PSET_NAMEwarn738,955Swept with tools/bench/sweep.js (method)
NB_MODEL_DUP_PROPERTY_NAMEwarn62,230Swept with tools/bench/sweep.js (method)
NB_UNITS_AREA_DEFAULTwarn55Swept with tools/bench/sweep.js (method)
NB_UNITS_SI_NAME_MISMATCHwarn33Swept with tools/bench/sweep.js (method)
NB_MODEL_CONTAINED_UNDECLAREDinfo22Swept with tools/bench/sweep.js (method)
NB_MODEL_SPATIAL_ORPHANwarn22Swept with tools/bench/sweep.js (method)
NB_CONTEXT_WCS_NOT_IDENTITYinfo11Swept with tools/bench/sweep.js (method)
NB_MODEL_SHARED_QUANTITYinfo12Swept with tools/bench/sweep.js (method)
NB_UNITS_FACTOR_SUSPECTwarn11Swept with tools/bench/sweep.js (method)

The corpus

The public tier of tools/corpus/manifest.json: buildingSMART sample files and exporter test files that the manifest lists with their source and license. Files are fetched by the manifest from their sources and are not redistributed here.

Reproduce it

node tools/bench/sweep.js

Writes the result JSON under tools/bench/results/ and regenerates docs/validation/sweep.md.

Notices

NativeBIM is licensed software. It does not provide design, engineering or other professional services. Outputs are drafts for review by the licensed professional of record.

IFC and Industry Foundation Classes are marks of buildingSMART International.

NativeBIM is not affiliated with, endorsed by or sponsored by the companies and organizations named here. Product names and marks belong to their owners.

NativeBIM is provided as is, without warranty of any kind. To the extent the law allows, FeatureBoard Labs Incorporated is not liable for indirect, incidental or consequential damages, lost profits or lost data, and its total liability is limited to the license fees paid in the 12 months before the claim. Read the license.