Stress Geometry Heavy
Deterministic synthetic case (seed 3003) with 1000 Building objects each carrying 4 MultiSurface geometries at LoDs 0-3 (4000 geometry records total). No attributes, semantics, materials, or textures. Targets multi-LoD geometry dispatch and geometry array allocation. Hardware load: CPU (geometry type dispatch per LoD), memory for 4x geometry arrays per object. Architecture bottleneck: LoD index maintenance and geometry iteration. Data model bottleneck: 4 geometry structs per CityObject.
Case
id:stress_geometry_heavylayer:workloadfamily:stressartifact_mode:generatedsource_kind:syntheticrepresentation:cityjsonpath:cases/workloads/stress_geometry_heavy
Files
generated:artifacts/generated/stress_geometry_heavy.city.jsonprofile:cases/workloads/stress_geometry_heavy/profile.json
Source JSON
case.json
{
"artifact_mode": "generated",
"artifact_paths": {
"generated": "artifacts/generated/stress_geometry_heavy.city.json",
"profile": "cases/workloads/stress_geometry_heavy/profile.json"
},
"assertions": [
"all_geometries_preserved",
"bottleneck_shape_visible"
],
"cityjson_version": "2.0",
"description": "Deterministic synthetic case (seed 3003) with 1000 Building objects each carrying 4 MultiSurface geometries at LoDs 0-3 (4000 geometry records total). No attributes, semantics, materials, or textures. Targets multi-LoD geometry dispatch and geometry array allocation. Hardware load: CPU (geometry type dispatch per LoD), memory for 4x geometry arrays per object. Architecture bottleneck: LoD index maintenance and geometry iteration. Data model bottleneck: 4 geometry structs per CityObject.",
"family": "stress",
"geometry_kind": "dummy",
"id": "stress_geometry_heavy",
"layer": "workload",
"representation": "cityjson",
"source_kind": "synthetic",
"version": 2
}
invariants.json
{
"checks": [
{
"description": "All 4 geometries per CityObject at distinct LoDs are preserved after encode/decode.",
"id": "all_geometries_preserved"
},
{
"description": "The case exposes the intended multi-geometry allocation shape (4000 geometry records across 1000 objects).",
"id": "bottleneck_shape_visible"
}
],
"id": "stress_geometry_heavy",
"kind": "positive",
"version": 1
}
profile.json
{
"cases": [
{
"allowed_lods": [
"0",
"1",
"2",
"3"
],
"allowed_types_cityobject": [
"Building"
],
"allowed_types_geometry": [
"MultiSurface"
],
"attributes_enabled": false,
"description": "1000 Building objects each with 4 MultiSurface geometries at LoDs 0-3. No attributes, semantics, materials, or textures.",
"id": "stress_geometry_heavy",
"materials_enabled": false,
"max_cityobjects": 1000,
"max_members_cityobject_geometries": 4,
"max_members_multisurface": 2,
"min_cityobjects": 1000,
"min_members_cityobject_geometries": 4,
"min_members_multisurface": 1,
"seed": 3003,
"semantics_enabled": false,
"textures_enabled": false
}
],
"purpose": "Stress fixture for multi-LoD geometry dispatch and geometry array allocation.",
"version": 1
}