One of the grim realities of CAD is that drafting and modeling tasks cannot use the many cores we have in our computers today. Fifteen of those 16 cores roaring along at 4.15GHz in your desktop BOXX behemoth are idling a lot of the time.
Other CAD tasks can. Rendering, yes; FEA, yes. Their tasks can be broken in to pieces and then handed off to each core. Sections of the model to be rendered; pieces of the model to be analyzed.
Some years ago, I sat in a SPEC meeting where representatives from Autodesk,Dell, and so on puzzled over how to shift drafting and modeling into multi-core activities. The issue that made it impossible, they determined, was that CAD vendors have no idea which step users will carry out next. (And to think that philosophical materialists assume our behavior is deterministic!)
Using the millions of processors in GPUs is just as unhelpful, for they have the same limitation as those miserly four-or-so cores in CPUs. Computing jobs needing to be set up before they can assigned to individual processors, whether CPU or GPU.
Rendering and FEA can be multi-cored because the models with which they are working are static, and so can be predictably split into numerous mini-jobs -- one assigned to each core. In contrast, drawing and editing are working with dynamic models, ones that constantly change in ways unpredictable. Darn those humanoid operators and their free wills!
In the meantime, we designers can rely only on raw CPU and GPU speed to make our editing go faster. Except that CPU speeds flatlined more than a decade ago -- notwithstanding Moore's Postulate (it never was a law; more of a marketing claim, really). Unfortunately, raw speed is not that useful, given that we spend more time thinking and socializing than drafting.
(Actual true example: I type at 120 words per minute, but my Atlantis word processor currently is reporting my writing speed as averaging just 22 words/min. I'm writing this article 5.4x slower than I could be typing it, as I putter around with thinking, editing, and rewriting.)
CAD vendors, nevertheless, are nibbling at the edges in multi-coring the activities surrounding basic drafting. For example, CAD programs written with the Open Design Alliance's API (as well as others) now multi-core the loading of modeling files: different parts of the file are loaded at the same time so that mammoth drawings appear in less time. Autodesk is doing a fine job in previewing the results of editing commands. Bricsys implemented the ^S metacharacter to instantly edit the entity highlighted by the Quad cursor.
Graphisoft last week showed me advances they are making. The not-yet-releasedArchiCAD 19 does multi-core updates: tabs hold different views of the current model, like floor plans, elevations, sections, and/or 3D views. (Users choose the view for each tab, kind of like favorites.) As users make changes to the floor plan (for example), ArchiCAD uses the additional cores in the CPU to update the (hidden) views in the other tabs. In one example of users switching to another tab, ArchiCAD now takes 0.08 seconds to display the view, instead of several seconds as before. (See Figure 1.)
Figure 1 ArchiCAD 19 collapses the CPU loads (shown in the multiple colors) through multi-core background processing of views
Graphisoft calls this "predictive background processing" and has a patent pending on it. It'll be interesting to see if they extend predictive processing to other areas of ArchiCAD in next year's release.
In the meantime, the company is looking at other aspects of speed. As ArchiCAD implementation team leader Tibor Szolnoki told me last week, "Speed is a complex topic, as it is perceived differently by customers." And so Graphisoft found other ways to increase the apparent speed of its CAD program, including ones new to ArchiCAD 19 (though not necessarily new to other CAD programs):
- Reducing the number of clicks through drag'n drops from palettes, which eliminates the need to navigate dialog boxes -- such as when placing and replacing materials with the new Surface Painter
- Making the user interface uniform, so that the Mac version works identically to the Windows version -- by optionally docking floating palettes (that I find so annoying on Macs) to the application's window, useful for customers who use both versions
- Switching to full screen modes, to reduce the number of UI elements whose functions duplicate each other -- like the menu bar in Mac
- Replacing the complex-looking tree of the model navigator, with tabs hosting user-selected views -- as described earlier
- Allowing tabs to access to related views, such as other sections or elevations
- Providing search fields to reduce the number of items displayed by long lists
- Adding the Syringe tool to determine which elements are used in the model (like materials in Surface Painter), and then return a list of them
- Letting point clouds show the differences between the as-built construction and the as-designed model (see Figure 2)

Figure 2 Red area shows where the building as constructed differs from the model, as designed in ArchiCAD
- Drawing non-plotting permanent guidelines (Graphisoft calls them "intelligent drafting aids") that snap automatically to geometry once the mouse button is released
- Employing multiple snap points and intelligent snap points to divide edges into equi-spaced distances, which are used to model accurately in 3D
- Performing modeling in 3D perspective mode with the help of intelligent snap modes, such as of roofs
- Placing labels that were generated automatically from parameters associated with the elements being labelled
- Determining net areas, such as the paint needed for walls, minus the areas covered by baseboards and crown molding (Graphisoft developed a system that lets users determine which objects to exclude from calculations
- Speeding up 3D view rotations and walkthroughs to 40-60 frames per second by optimizing OpenGL
With all this, Graphisoft's vp of marketing Akos Pfemeter declares, "We think we are faster than anyone else on the market." The company expects to ship ArchiCAD 19 by mid-June.
www.graphisoft.com/archicad/archicad-19 |
Comments