Friday, August 5, 2011

Companies That Have Better CADCAM Technology

I've started a LinkedIn group called CADCAM Technology Leaders. I feel an advertising free discussion group offers a much better chance for objective and diverse dialog than a blog does. My goal is to put users on equal ground with CADCAM company employees and their resellers, while encouraging diverse CADCAM discussion.

The CADCAM Technology Leaders group on LinkedIn already has over 950 members and it's very active. It's an open LinkedIn group and anyone can read it without joining:

Here are the rules I've established for CADCAM Technology Leaders group on LinkedIn:

Comments should explain in sufficient detail why the technology you are discussing is a leading edge technology. Comments like "xyz CADCAM is the best!!!" or "abc CADCAM sucks!!!" will be deleted. Fact based comparisons between different products are acceptable and welcome. Here is an example of what I consider to be an acceptable comparison:

"SpaceClaim has direct modeling tools that allow me to work quickly and easily on non-native solids. SolidWorks has no direct modeling tools and I find SpaceClaim much better because our shop mostly works with non-native solids."

No personal attacks of any kind will be permitted.

The CAD Problem:

Very shortly 12, 24, and 48-core processors will be common place but the constraint managers and geometry kernel that are used in most CAD systems can only use 1 core.

Unfortunately the legacy code software components used in products like SolidWorks, Solid Edge ST, etc. like the Siemens D-Cubed 2D and 3D constraint managers, don't support multi-core processors. In addition, the Parasolid kernel doesn't make full use of multi-core processing.

I fail to see how a state of the art CAD system can be built on top of old, legacy code software components that don't fully support multi-core processors. For example, Solid Edge has been around for more than fifteen years. It's tired and it's old. Unlike SolidWorks, Siemens has not announced any plans to rewrite Solid Edge ST from the ground up. When you buy Solid Edge ST you are buying very old technology that has had a cosmetic rehab. Switching from one old legacy code program to another isn't the answer! The answer is switching to a program that is built with non-legacy code software components designed from the ground up to take full advantage of multi-core processors.

I've waited a long time for CAD users who want to understand why the performance of the CAD programs they use is so poor. Finally, a few CAD users are beginning to realize that the answer is not as easy as just dumping SolidWorks and switching to another CAD program.

Here are some recent comments from a CAD user who wants real answers and not the bullshit that CAD companies want to pass off as fact such as Siemens Solid Edge head of development Dan Staples making the bogus claim that history based modeling is "maxed out". Why does Siemens Solid Edge head of developement Dan Staples make this bogus claim? Keep reading and you will understand why. In the mean time here are some questions and tests being run by CAD user Kevin Quigley who is asking good questions and trying to get some real answers. Kevin Quigley is focused on the geometry kernel right now but I think the problem with constraint solvers are even worse than those with geometry kernels!

"Similarly as I sit with my 4 core/8 threads workstation watching Solidworks only using one core I get angry. These are kernel issues that slow things down." ... Kevin Quigley

"There is a lot of legacy inside all the main kernals now. I think the CAD world needs a new more efficient one." ... Kevin Quigley

"So I’m playing around then with the Task Manager and all doing these kernal tasks I see only one core is active – much like SolidWorks. This cannot help. How long before Parasolid and ACIS are able to handle more than one core?" ... Kevin Quigley

SolidWorks, Solid Edge ST, Creo, NX all have the same problem with not being able to use concurrency. I don't know if Catia V5 and V6 have the same problem. I've repeatedly asked Dassault on Twitter for clarification and I've gotten no answers from Dassault employees.

CAD vendors want to move your focus to PLM because they don't want to spend the money to fix what's wrong with their geometry tools. This smoke and mirrors tactic will only work if CAD users allow CAD companies to get away with it. As of right now the geometry tools in CAD programs are nowhere near good enough. Examples are of what I mean by nowhere near good enough are long regeneration times with history trees, 2D sketchers that easily fail, 3D sketchers that are not intuitive and are very unnatural to use and surfacing tools that aren't powerful enough and are poorly integrated with solid modeling tools.

The software components used by most CAD systems are the Siemens D-Cubed constraint solvers and Siemens Parasolid geometry kernel. Neither support concurrency. Neither does Granite One (PTC Creo) or the ACIS kernel.

Thread-Safe Doesn't Mean True Parallelism

"Thread-safety is a prerequisite to concurrency, which provides true parallelism when paired with multi-processor/multi-core architectures. Here threads work concurrently to complete tasks in less time. The performance increase is usually described as a scaling factor with respect to the number of available cores. The goal of course is to achieve ideal scaling, representing an ideal use of available processing power." ... Jeff Happoldt

"Compute intensive operations on single models may also be candidates for parallelism. Here the parallel operations are performed on interconnected elements of a model. The challenge is decoupling the interdependencies to avoid unwanted interactions, which can lead to incorrect results, non-deterministic behavior, and even severe errors. The decoupling is accomplished by copying the required portions of the model into the context of the thread, thereby making the data independent. Performance gains are possible when the extra overhead of the copy operation is minimal with respect to the task computation time." ... Jeff Happoldt

The solvers and the geometrical kernels used by the leading CAD vendors were developed 25-30 years ago without parallelization in mind. Rewriting millions of line code isn't going to happen anytime soon and CAD companies have no answers to this serious issue so they avoid it like the plague. The big question is if rewriting an existing CAD application to take advantage of multi-core processors is even realistic. It's unclear to me at this time if it is or isn't and whether the only answer will be new CAD applications written from scratch to take advantage of multi-core processors. Catia V5 and V6 use the CGM kernel. SolidWorks V6 will also use the CGM kernel. The CGM kernel, unlike Siemens Parasoid and Siemens D-Cubed 2D and 3D constraint solvers, seems to have much easier support for multiple core processors as the video in the link below shows. Besides the CGM kernel video, I'm unable to locate any video showing support for multi-core processors that uses another geometry kernel or for any constraint solver. If others kernels and constraint solvers could support multi-core processors easily one would think they would be showing that they can.

Multi Core Support In CGM

From many years of using Solidworks, I know that this is a major problem even on modest sized part models. I would be interested in knowing if anyone has done a direct comparison between Catia V5 / V6 (CGM kernel) and Siemens NX (Parasolid kernel) or SolidWorks (Parasolid) in this area. The CGM kernel is what SolidWorks V6 will use.

Webinar Showing CGM's Advanced Capabilities

These guys make some very valid points about lack of multi-core support and old math in both constraint solvers and geometry kernels:

Claim That Constraint Solvers Developed Decades Ago Are The Problem 

"They are trying to sell you a super-car with an ancient engine developed many-many years ago."

"Standard solvers are not able to solve really big systems of equations and non-stable even when these systems are not so complicated (having about thousand of variables)."

"From its early years Pro/ENGINEER experienced difficulties with complex parts and sections. Now, after more than 20 years, the situation is practically the same – not because developers of PTC are lazy, but because the current approach to solver leaves no chances to improve the situation with performance. The situation with competitors of PTC is not better. None of the leaders of the CAD industry could manipulate with really big sections and really complex parts and assemblies." Limitations Of Parametric CAD

"It is clear to everybody in the CAD community that the industry after a decade of incremental improvements is waiting for some big ground-breaking technologies to come. During the last very years main CAD vendors are started to introduce slowly some solutions. Some of the companies even declared (may be, without real foundation behind these declarations) that they revolutionaries the CAD industry. In April, 2008 Siemens PLM introduced their Synchronous Technology (certainly, as a “revolutionary” technology that changes solid modeling). They have been working on ST for several years (now ST 4 is already presented) and they really moved some steps forward to the unification of the direct modeling and parametric approaches to solid modeling. But still it is not that revolutionary Great Unification the CAD community is looking for. ST approach (and similar technologies of Autodesk and PTC) preserves behind the scene the same history tree of features as well as the direct-modeling presentation of a solid object. What they managed to do is to “synchronize” the changes in these two models (whether you are doing changes using direct modeling tools, or you are using parametric tools). This is a nice trick but still this is a compromise (preserving all the problems of the feature-based approach), not a real revolution. What is the verse thing with the technologies similar to ST is that this trick is rather restricted – only some local modifications of solid models are possible with such an approach."

They make the following claims: 

"Traditional solvers use standard matrix methods to solve linear systems of equations. These methods are very slow, unstable for big systems, and require a lot of memory' and that "this makes it impossible to resolve really complex models."

"None of the leaders of the CAD industry can manipulate with really big sections and really complex parts and assemblies." They claim their "cheetah solver" is a real breakthrough because: "Cheetah has approximately linear growth both in time and memory requirements. This opens the opportunity to resolve models even with number of variables about hundreds of thousands!"

"Our solver is tuned for problems specific to parametric CAD (while traditional solvers use general purpose methods)."

"It is very fast, stable, ready for parallelization and can resolve systems that are hundreds times bigger than those of traditional solvers."

Is real competition to Siemens Parasolid and Siemens D Cubed with newer modeling engines / solvers the answer for end users seeking better modeling tools? I think so. After many years of using CAD I'm convinced that we need more competition when it comes to modeling kernels / solvers if we want better geometry tools. For sure one thing that hasn't been delivered is a true common workspace for both parametric modeling and direct modeling. Direct modeling has also failed to deliver powerful enough tools to replace history based modeling completely. All direct modelers I've seen suck when it comes to creating family of parts. Creo Direct (CoCreate) is the direct modeling leader in this area.. Even though Creo Direct is the leader in family of parts for direct modelers, it still isn't anywhere near good enough compared to parametric modeling.

The New Russian C3D Monolithic Kernel: 

Will it solve the problems outline above? Unlike Siemens Parasolid, the C3D kernel approach is to offer a kernel that contains a built-in solver. Not much is known about the C3D kernel yet. Supposedly more details are coming soon:

The CAM Problem: 

The following was written by someone who creates toolpath algorithms for CAM programs. I happen to agree with his perspective on the CAM industry and on CAM users. I think what he had to say years ago clearly shows why the CAM industry continues to experience so many problems:

Where's All The CAM Programmers

"Ultimately the problem is with the users and their level of interest. They’ve got lots of better things they need to do than care about the software, and none of them seem to show any curiosity whatsoever as to what goes into it. The vendors spin this line about how there’s all these programmers at work in a back room you can’t talk to, and the company has all its secret special valuable algorithms that are extra good works of genius better than the science behind General Relativity, and I don’t think they actually need to bother with these fairy-tales. So few people question it. All the company needs to say is: Yes, we sacked all the programmers last year, and we’re down to our last guy who knows how to compile the system for new versions of the operating system. We pay him well to stay. No you won’t get your bugs fixed, because at this stage of development everyone seems able to work around the issues that remain without too much hassle. We’re certain that no one is going to come along with anything new and better because they won’t be able to afford the years of development that it took to get ours up to this stage. Back when our product was being developed in the 1990s it was possible to make money with fewer features and with something that ran slower on the machine, and at that time we were still re-investing the money and keeping lots of well-motivated programmers working on it to get it ahead. Now we don’t need to do this, because we believe that the development gap is too wide for any new start-ups to be able to bridge it with us competing against them while they are still in their early days. We know you, the customer, will not give them a second thought until they have everything we do and twice as good, and they’ll always go out of business before that happens. Today and tomorrow, we own this software. It is indeed stagnant. And if you want it, you can take it at the price we like, and I’ll be able to afford a nice car and continue filling it with gas to drive back and forth across Arizona until this economy goes completely into the ground because we’re not able to tell the difference between producing stuff and making money. Thank you very much.”

My Perspective:

CADCAM users who support old technology and who refuse to stand up and demand the needed changes from legacy code CADCAM companies on advertising driven machining forums like Practically Worthless Machinist and CNC Advertising Zone are a major problem for adaptation of new and better technology in CADCAM. The same is true on tightly controlled and censored message boards like the In House Solutions eMastercam forum and the Gibbscam Message Board. This blog gets literally hundreds of page views everyday yet there still isn't enough of a demand from machinists and CADCAM programmers to start advertising free machining and CADCAM web boards, nor is there any desire by machinists to start working together to force CAM developers into providing the needed changes in popular legacy code CAM programs that many of us are stuck using.

For many years I have seen posters to CAM company web boards accept lame excuse after lame excuse from product fanboi's and moderators. These types of posters have no clue how to force the needed changes from a CAM developer like CNC Software (Mastercam). Years go by (in the case of Mastercam V9 - X5 and soon to be X6) with no real results and they still can't figure out why years of complaining and documenting bugs has been mostly a complete and utter waste of time. The following is a quote from long time poster to the eMastercam forum who wishes to stay ignorant, despite years of viewing evidence which clearly shows how Mark Summers the owner of CNC Software/Mastercam and In House Solutions the host of eMastercam do business: "That would require CNC Software to admit they have bugs. I cannot imagine why they are so secretive about things like this." His quote (above) comes only days after In House Solutions was forced to hide their Off Topic forum on eMastercam.

It doesn't help that most machinists and CAM programmers have no clue what's really needed in a CADCAM program and what the proper tools are. If more machinists and CADCAM programmers had a clue you wouldn't be reading on advertising based machinist and CADCAM forums how wonderful crapware like OneCNC is or how BobCADCAM has made huge strides and is a bargain. The sad fact is that neither of these two pieces of crapware have any real vision behind them.

While I spend most of my time talking about technology on this blog, what is often neglected by those trying to make an intelligent decision on which CADCAM product to use, is the CADCAM companies attitude toward the user. Quite a few CADCAM companies, especially older, established, legacy code CADCAM companies, are openly hostile towards their users and in my opinion fear them. The fear, hostility and lack of respect toward users shows up on their forums where censorship often runs rampant, with their lack of product documentation, with their poor use of video to document their products features, with little or no educational support, with no student version, etc.


For years CIMData has published "reviews" of CAM products. To get CIMData to review a CAM product a company has to pay CIMData to review it. That wouldn't be so bad if CIMData was actually thoroughly testing the CAM product and then offering up the results of that independent testing. Unfortunately this isn't what CIMData does. That an independent testing facility for CAM software doesn't exist is a very unfortunate situation and I'm hopeful that one day this will change. In the mean time, I will not be referring to or using any of CIMData's famous market share pie charts, etc. I simply don't trust anything that CIMData does or reports on.

The following was written by the former owner of AlphaCAM, Sandy Livingstone and describes how CIMData does CAM "reviews". It's pay for play all the way:

"Be aware that the CIMDATA report simply quotes figures for the number of customers given to them by the vendors. The vendor has to pay a significant amount to be included in the survey and also supply most of the text published in the report about their system.. If the vendor chooses not to pay to have an entry in the report (as we do) Alan Christman makes a guess at what he thinks the figure for the installed customer base might be."

"I wrote almost all of the words for our 'survey'. Not all of them - Alan Christman, who visited us for two days, added some of his own. But we paid for his air fare, his time with us, a charge for being included in the survey"

"The sad news is that any organization that publishes surveys and reviews do it for the money. The vendors that they include in their surveys have to pay to be included, and have to write most of the words. We did this once, because it seemed like a good idea, but never again, now that we know the reality, having taken part in what I can only describe as an expensive scam. Little by little we learn more and more. It's like a restaurant paying protection money to a gang that sends round a couple of guys with meat cleavers who offer to ensure that the place won't be burned down, or the customers harassed, for just $1000 per week. In other words, it's a form of blackmail - "Pay us to include your company in our survey or ......"

What Understanding What I Write On This Blog Can Do For You:

Despite the current sorry state of affairs in the CADCAM business there are a few companies that are true technology leaders. It's my goal to discuss them on this blog and show why the technology they've developed makes such a huge difference compared to legacy code CADCAM products.

It's my belief if you make the effort to understand advanced CADCAM technology you can gain a significant advantage over your competition if they are using a legacy code CADCAM product.

For those who wish to contact me privately, I can be reached at jonbanquer at (remove this) yahoo(dot)com