cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi-Core Support | Multi-Thread Processing

Multi-Core Support | Multi-Thread Processing

Revise the base AutoCAD code to support multi-core processors for ALL operations - not just redraw, regen, and rendering.  It is almost impossible to buy a single core CPU anymore and quad core is becoming the standard.  Therefore with a 2GHz processors you only have a 500MHz CPU when running CAD.  This is equivalent to CAD performance in 1995 (20-yrs ago!).

I understand it is a ton of work to re-code, however, it would give MASSIVE performance increases across all the verticals; including Civil 3D.

71 Comments
JamesMaeding
Advisor

@christopherl1 

If you read HHGTTG, the problem is people ask for solutions to things they have no understanding of.

This muti-threading idea is only useful to adesk if you pick a task and explain why its processes are not dependent on each other, so can be done in any order on any cores.

And that is a very small group of people since most are not programmers. Then its never the whole process that can be multi-threaded. Asking for "general multi-threading" is a nothingburger. Seeing that Autodesk accepted it is like saying "sure suckers, we'll think about that, good idea!"

The joke is on us.

AllenJessup
Mentor
James Maeding hit the nail on the head. Most Cogo and Engineering calculations are linear. They can't be split apart and sent through multiple threads them brought back together at the end.

Multithreading is advantageous in 3D applications for separating UI from logic. You may not process something like moving larger portions of a model that interact with each other, but you can prevent something like tool palettes, properties, and coming from causing lag, which is where AutoCAD is a pain point. To believe double the CPUs will double the speed would be inaccurate, but that's not to say there are not many optimizations to be made that Autodesk has left by the wayside as hardware as advanced.

JamesMaeding
Advisor

@CivicDesignDevelopment 

Now we are talking. So the idea should have been specific to a UI, or process.

I code in C# and know its super easy to change a foreach loop into a multi threaded loop if indeed the process order does not matter. So I have to think adesk is taking advantage of that when its easy, and already have. The remains are the hard ones, and a general request to just do it is not going to be effective.

Having said that, anyone with a specific area of improvement desired, please chime in.

The thing that cracks me up is how the install of acad 2022 says you can start using the program while its installing. I'm thinking I will go to use the pline command and it will tell me its not installed yet, lol. Order matters there, install, then use.

bobywoxy
Community Visitor

Thank you for sharing your thoughts and concerns regarding the performance of AutoCAD on multi-core processors. I understand your frustration and the need for optimizing the software to take full advantage of the capabilities offered by modern processors.

Indeed, utilizing multi-core processors to their full potential can significantly enhance the performance of CAD software, including AutoCAD. While AutoCAD currently supports multi-threading for certain operations like redraw, regen, and rendering, I understand your desire to see broader support across all operations.

However, reworking the entire AutoCAD codebase to fully support multi-core processing is a substantial undertaking that requires careful consideration and extensive development efforts. It involves analyzing the existing code, identifying sections that can benefit from parallelization, and implementing the necessary changes. This process can be complex, time-consuming, and may involve addressing potential issues that arise from parallel execution.

Thank you for raising this issue, and I hope that future updates of AutoCAD will address the multi-core support concerns and further enhance the performance across all verticals, including Civil 3D.

mspatz
Collaborator

@JamesMaeding , also when you have multiple drawings open have each utilized a different core for processing calcs for that instance/drawing?   I believe there are things that can be done to optimize the use and multi-core is not going away so it would be a worthwhile investment of development resources @bobywoxy

 

The biggest complaint with CAD is speed.  Put a new feature freeze in place for 2 or 3 years to work on performance.  There was a recent poll completed that indicated that is what users wanted to see; at least from the Civil 3D product team (if I'm not mistaken).  I believe the focus there for the next release or two will be on performance over new features.

...OR just wait for a tick (year or two) and paste the code base into ChatGPT and ask it to optimize for multi-core performance (HA... but not really in a couple of years this seems like it may be possible, at leaste to get going).

JamesMaeding
Advisor

@mspatz 

What I am seeing is the more power you give to cad operators, the worse some will handle overloading the system. The speed thing can generally be accomplished by correct data organization, and a thing called "delta" saving, where only the part of a file that changed is saved/transmitted and so on. I believe Bentley has implemented this in Projectwise, their document handling system.

Don't buy products from them, they have no business integrity.

I could fill up pages on how civil3d has fallen short. They got so much right but too much wrong.

The people that get AI know you must first have correct data containers like civil BIM objects, so parameters can be hooked to some kind of flow chart and options tried. We don't need AI for civil though, we need correct objects. For instance, pipelines ARE roads, in terms of centerline plan and profile design. They are not nodes and spokes. Same for civil3d feature lines. Anyone who knows civil would never make the mistakes they did, at least after trying the tools. When you tie horizontal and vertical editing together, you mess everything up. There is no reason to, and we don't hook car steering wheels to brakes for same reason, separate systems.

Until we have decent civil objects, there is no point involving machine learning or this thing called AI, which actually only relates to words and communication. Also, multi-threading is not that effective either, in actually boosting productivity. You get the object foundations right, and so many things line up. We did that with in house tools and modeling surfaces and utilities is efficient, and we do get the modeling work that would otherwise go to other teams. We just stuck to correct principles and kept adjusting as time went on.

JamesMaeding
Advisor

@bobywoxy 

I don't think autodesk has the staff to even review a transition to multi-threaded acad processes.

They don't do acad R&D much any more from a customer perspective. I'm not complaining either, acad has been pretty stable for last 5 years and the dwg format staying is highly welcome.

Adesk seems to be more about system compatibility these days, than new features.

So while you say that its about the effort involved, do you really believe adesk even wants to shake things up if they could? I don't.

I don't think autodesk has the staff to even review a transition to multi-threaded acad processes.

How can we expect Autodesk to fund their own software R&D when they are busy buying companies for big money? 
https://adsknews.autodesk.com/en/news/autodesk-to-acquire-innovyze/

JamesMaeding
Advisor

Hmm, water modeling. If I can replace Bentley watercad, I'll do it in a heartbeat.

I love the previously haestad products, but Bentley's network seat system is a trap they love to spring.

My design specialty was water design, now I kind of do everything on a general level.

I'd love to see adesk get their act together with pipe design as its one of the easier ones to do BIM objects for. Current pipe networks are tinker toy structure though, they know it.

JamesMaeding
Advisor

@Bozellbartlesenson351 

I have to say, your reply sounded exactly how chatgbt would have responded.

Very general, nicely spoken, but absolutely useless to furthering the actual goal.

Say something to convince us you are not an AI bot of some sort.

Pretty cool I can't quite tell though.

Can't find what you're looking for? Ask the community or share your knowledge.

Submit Idea