Maker Pro
Maker Pro

Dedicated CAD computer?

  • Thread starter Mike Rocket J Squirrel
  • Start date
M

Mike Rocket J Squirrel

Jan 1, 1970
0
Hi all,

Several weeks ago I asked for help with my old Protel Client 3.x
crashing under Windows XP and received a lot of help -- thanks. The most
promising solution was to run Protel under VM Workstation emulating Win
95, and that seemed to work for a couple days, then Protel began its
crashes again (most always a GPF in ADVPCB.exe). I gave it a lot of
thought, and talked with the local Altium rep, and bit the bullet and
bought AD6 + P99SE. My first inclination was to simply upgrade to P99SE
and ignore AD6, but while receiving some nice one-on-one NetMeeting
training from Altium I liked better how AD6 handled my needs and did
things, so I've installed it and am running it. I pretty much like
everything I see, though I need Query and Filter 101 training.

But I still get about a crash a day, usually in ADVPCB.exe. Unlike
Protel, AD6 does not trash the PCB and schematic files when it crashes,
so that problem is behind me. The crashes are unwelcome, of course. The
machine I'm running AD6 on is used for many, many, purposes - it's my
general office machine and is primarily used for accounting and graphics
and the kitchen sink and a host of other things. I don't want to change
its configuration because, with the exception of AD, it is perfectly
stable and I like the way it's set up.

So I'm considering getting a dedicated WinXP box to run AD6 on. I could
just pick up a basic machine with good graphics from my local PC store .
.. . but I would like to know if anyone has recommendations for what
makes a good AD6 box.

Thanks in advance!

- Mike Elliott
 
S

Stephan Rose

Jan 1, 1970
0
So I'm considering getting a dedicated WinXP box to run AD6 on. I could
just pick up a basic machine with good graphics from my local PC store .
. . but I would like to know if anyone has recommendations for what
makes a good AD6 box.

Thanks in advance!

- Mike Elliott

Can't comment on the particular requirements for that software but
here are my general guidelines for the systems I build. Note that I
hand build all systems and would never ever consider going to a store
to buy a computer.

Motherboards of choice for me are MSI, never have had problems with
them, always been rock solid and stable to me. Whatever motherboard
you get, I would make sure it has PCI-Express slots for the video
card.

CPU - Intel P4 3.0GHz or greater or AMD if you prefer. I think a
debate on "which is better" is pointless. I wouldn't waste my money on
Dual Core, most apps are single threaded and don't benefit from it. If
you had need for Dual Core you would know why.

Hard drive - Serial ATA 7,200 rpm minimum, whatever capacity suits
you. RAID setups are options too but probably overkill for your needs.

Ram - 1 gig...minimum. 2 gigs reccomended. 4 gigs if you got a little
spare cash. You cannot have enough of the stuff. Anything past 4 gigs
though is a waste even for a 64-bit CPU because most applications are
still 32-bit and cannot address memory above 4 gigs.

Video card - I would get a reasonably priced PCI-Express based
card...nVidia is my choice there. Anything in the 100 bucks range is
probably going to be sufficient fast enough...I doubt that AD6 takes
advantage of any hardware acceleration much if at all.

Power Supply - My estimate..300W...400W maybe. Depends a little on the
chosen video card. Bigger is better...wouldn't get exactly the
cheapest either. Spend the extra 40 bucks and get something decent,
make sure it comes with plugs for the serial ATA drives (not all do)
and (if required for the video card such as my 7800 GT) with power
plugs for the video card.

Case - My choice generally is Thermaltake, various models available.
Pick one you like. Short of the motherboard and power supply,
everything else generally snaps into their cases eliminating the need
for screws. It's great, I love it. Cooling is very good too.

--
Stephan
2003 Yamaha R6

kimi no koto omoidasu hi
nante nai no wa
kimi no koto wasureta toki ga nai kara
 
B

Brad Velander

Jan 1, 1970
0
Howdy Mike,
So you are liking AD6.

One suggestion regarding your faults/GPF faults. Years ago any number of
P99SE users were getting numbers of crashes and faults. After much
discussion, trials and testing, the problems were generally eliminated by
one of two things. Rigorous memory testing (long periods of in-depth pattern
testing) showed intermittent faults. Also video cards were the cause of a
lot of the faults. The guys either updated video drivers or bought other
video cards. Those two solutions have always seemed to relieve the problems
for most Altium/Protel users.

To assist in your quest you could check the Altium user forum, I know
that not that long back (maybe 3 or 4 weeks max) there was a similar
discussion when someone asked the same question regarding what was a good
machine for running AD6. I believe that a significant number of the
responses were running Nvidia Quattro 4400 video cards (don't quote me on
that though).

As Stephan mentioned, don't bother with a dual core processor because
AD6 definitely doesn't use it and probably never will. Some users were even
turning off their dual core capabilities through their Bios and claiming
improvements in speed. I don't know if that makes sense or not, but that is
what they claimed.

While Altium suggests a certain machine config, it is probably overkill
for your use as mentioned previously. They state a 3GHz P4 but you could
surely get away with a 2.5 - 3 GHz Celeron without noticing a significant
lag. I am sure the Altium specs are set-up for doing everyhting the package
could possibly do, FPGA, autorouting, Tasking realtime tasks and all of the
advanced features where you may want the best processing speed available. I
would go with 2Gig of RAM though, today that is very cheap.

Have you read the Query introduction paper from the Altium website? I
assume that you probably have, so what you really need is the advanced guide
that outlines and lists all the query functions and how they work, doesn't
everybody? One thing that some users over look too often is the FSO (find
similar object) command, it either replaces the need for queries or helps in
building queries when you first start out. There is also the query builder
tool if I remember correctly, remember that I don't presently use the AD
tool. When all else fails, post a question to the Altium forum, typically I
would think you would have an answer inside of 6 hours, 24/7, with all the
users around the world that are on the list.
 
M

Mike Rocket J Squirrel

Jan 1, 1970
0
Brad said:
Howdy Mike,
So you are liking AD6.

Yeah, I reckon so. If there is a problem with memory causing this
problem, well, I had Protel crashing on two machines here, and none of
the other programs, even memory intensive editing of my Canon 20D 16Mb
RAW files, causes crashing, so I dunno. Both machines are laptops, and
it's surprising that neither has updates available for the video "cards"
or drivers, but that's what I got. Of course I've not installed AD on
both machines, but my guess is that some background program that I like
and which interferes with none of my other programs is causing the
problem. I run the same set of utilities (AV, OOo Quick Launcher, Flash
Card readers, background backup systems, and other system tray items) on
both machines. And rather than fritter away time removing them and
trying to find programs that do the same job as well as I like and which
do not interfere w/ AD, it would be simpler just to set up a relatively
clean machine. I will take Stephen's suggestions with me to my computer
builder and see what they can do with it.

Thanks for the suggestion about the user forum. It's right there on the
Help menu, among the KB and KC options -- I need to check out the
support on the forum and will.

I like Find Similar Items a lot. It's right powerful. Altium will be
having two days on online training next week and I think many of my User
101 questions will be answered. I'm also lucky in that one of their top
tech support guys is a fan of my work so he's been providing some nice
personal support, too.

Best regards,

Mike Elliott
 
S

Stephan Rose

Jan 1, 1970
0
Howdy Mike,
So you are liking AD6.

One suggestion regarding your faults/GPF faults. Years ago any number of
P99SE users were getting numbers of crashes and faults. After much
discussion, trials and testing, the problems were generally eliminated by
one of two things. Rigorous memory testing (long periods of in-depth pattern
testing) showed intermittent faults. Also video cards were the cause of a
lot of the faults. The guys either updated video drivers or bought other
video cards. Those two solutions have always seemed to relieve the problems
for most Altium/Protel users.

To assist in your quest you could check the Altium user forum, I know
that not that long back (maybe 3 or 4 weeks max) there was a similar
discussion when someone asked the same question regarding what was a good
machine for running AD6. I believe that a significant number of the
responses were running Nvidia Quattro 4400 video cards (don't quote me on
that though).

As Stephan mentioned, don't bother with a dual core processor because
AD6 definitely doesn't use it and probably never will. Some users were even
turning off their dual core capabilities through their Bios and claiming
improvements in speed. I don't know if that makes sense or not, but that is
what they claimed.

It actually does make sense. When Dual Core is enabled there is
additional overhead required to distribute the workload across the two
cores, whichever way you slice it and dice it, this requires
additional CPU time.

Now if you have multiple tasks running in parallel then this overhead
is irrelevant because the benefits by far outweigh it.

But in case of a single threaded app the other core sits there idle
while you still have the overhead to check and see if there is
something that the other core could do (and the answer is always no).
So this time ends up wasted slowing the app down.

Sadly from a programming perspective, multithreading is "difficult" to
implement for someone that's been writing single threaded all their
life. There are many things that need to be taken into consideration
that you just don't need to worry about when writing single threaded
apps (deadlocks for example) and it's easy to make a mistake.

In addition to that algorithms also need to be written very
differently to be able to even take advantage of multi threading.

My EDA app actually is multi threaded where it makes sense to do so
such as my rendering loop for PCB Boards. The rendering loop is setup
to distribute the workload across all available CPUs (in case of
hyperthreading, dual core, or multiple CPUs) and both threads load the
GPU with video data in parallel as well. Allows me to render a board
with almost 20,000 objects (lines, vias, pads, text, etc.) including
all necessary triangulation resulting in almost 100k triangles in less
than 90ms. Layer sorting included (done via hardware z-buffering).

I only worry about this though to that extend for the PCB rendering
pipeline. Pattern editor, symbol editor, and schematic capture all run
single threaded as I've yet to come across a data set that requires me
to get that fancy =)

--
Stephan
2003 Yamaha R6

kimi no koto omoidasu hi
nante nai no wa
kimi no koto wasureta toki ga nai kara
 
C

Charlie Edmondson

Jan 1, 1970
0
Mike said:
Yeah, I reckon so. If there is a problem with memory causing this
problem, well, I had Protel crashing on two machines here, and none of
the other programs, even memory intensive editing of my Canon 20D 16Mb
RAW files, causes crashing, so I dunno. Both machines are laptops, and
it's surprising that neither has updates available for the video "cards"
or drivers, but that's what I got. Of course I've not installed AD on
both machines, but my guess is that some background program that I like
and which interferes with none of my other programs is causing the
problem. I run the same set of utilities (AV, OOo Quick Launcher, Flash
Card readers, background backup systems, and other system tray items) on
both machines. And rather than fritter away time removing them and
trying to find programs that do the same job as well as I like and which
do not interfere w/ AD, it would be simpler just to set up a relatively
clean machine. I will take Stephen's suggestions with me to my computer
builder and see what they can do with it.

Thanks for the suggestion about the user forum. It's right there on the
Help menu, among the KB and KC options -- I need to check out the
support on the forum and will.

I like Find Similar Items a lot. It's right powerful. Altium will be
having two days on online training next week and I think many of my User
101 questions will be answered. I'm also lucky in that one of their top
tech support guys is a fan of my work so he's been providing some nice
personal support, too.

Best regards,

Mike Elliott
Hi Mike, who is your favorite support person? It isn't that low life
Derek, is it... :cool:

Charlie
 
S

Stephan Rose

Jan 1, 1970
0
Hi Mike,

When you specify a DirectX9.0c graphics card make sure it supports shader
model 3.0. You will then be able to utilise the accelerated graphics in the
PCB editor of Altium Designer release 6.3. Here is the info about it:
http://www.altium.com/Evaluate/DEMO...ewFeatures/HardwareAcceleratedGraphicsEngine/

Cheers,
James

I am impressed that finally someone managed to utilize DirectX in an
EDA app but umm...Shader Model 3.0!?!? What the heck they need that
for...not like they are doing real-time HDR lighting or something...

--
Stephan
2003 Yamaha R6

kimi no koto omoidasu hi
nante nai no wa
kimi no koto wasureta toki ga nai kara
 
S

Stephan Rose

Jan 1, 1970
0
Hi Mike,

When you specify a DirectX9.0c graphics card make sure it supports shader
model 3.0. You will then be able to utilise the accelerated graphics in the
PCB editor of Altium Designer release 6.3. Here is the info about it:
http://www.altium.com/Evaluate/DEMO...ewFeatures/HardwareAcceleratedGraphicsEngine/

Cheers,
James

Oh I see what they are doing. Instead of triangulating the rounded
ends of the tracks they are using pixel shaders to do it.
Performance-wise probably a little faster than my method as much more
work is offloaded to the GPU but I dunno...I think I prefer my method
of triangulation as it works on the cheapst 19.95 video card as long
as it supports DX9.0c and therefore has a much broader spectrum of
compatability.

--
Stephan
2003 Yamaha R6

kimi no koto omoidasu hi
nante nai no wa
kimi no koto wasureta toki ga nai kara
 
M

Mike Rocket J Squirrel

Jan 1, 1970
0
Stephan said:
Oh I see what they are doing. Instead of triangulating the rounded
ends of the tracks they are using pixel shaders to do it.
Performance-wise probably a little faster than my method as much more
work is offloaded to the GPU but I dunno...I think I prefer my method
of triangulation as it works on the cheapst 19.95 video card as long
as it supports DX9.0c and therefore has a much broader spectrum of
compatability.

I'll just make believe that I know what you're talking about here.

-- mike elliott
 
B

Brad Velander

Jan 1, 1970
0
Stephan,
The one thing that Altium is doing that I believe involves the shader
functions is selectively highlighting and shading user selections. When you
select something they dim or shade the other nonselected items, the user can
vary the level of shading. It works very well because frankly, there are too
few sufficiently contrasting colors for layer colors, selection and
shading/highlighting once you get past simple 4 or 6 layer multilayers. Sure
there are hundreds of colors but they don't contrast well enough against
similar colors on a typical monitor.
 
S

Stephan Rose

Jan 1, 1970
0
Stephan,
The one thing that Altium is doing that I believe involves the shader
functions is selectively highlighting and shading user selections. When you
select something they dim or shade the other nonselected items, the user can
vary the level of shading. It works very well because frankly, there are too
few sufficiently contrasting colors for layer colors, selection and
shading/highlighting once you get past simple 4 or 6 layer multilayers. Sure
there are hundreds of colors but they don't contrast well enough against
similar colors on a typical monitor.

Should not really require shader functions to do so though.

The thing is that altium using Pixel Shader 3.0 would work on exactly
ONE out of my dozen computers I have. My method works on our 5 year
old laptop with only a small performance difference compared to my
high-end system.

Matter of fact I am at the point where I actually ditched software
support entirely (except for the DirectX reference rasterizer if
available on the target machine which is software) because I feel that
if our 5 year old bone-stock laptop can support my hardware
requirements, that's good enough.

Dunno if you have checked out the preview I posted of my app a few
weeks ago, a new post will be coming up in the near future though.

I don't dim other layers at this point in time but I do highlight the
current selection. You are right though, colors do become scarce past
6 or so layers.

But reading their description they are also drawing their lines using
PS3.0 because they say all they do is tell the video card the
endpoints and width of the line. Which essentially means they are
creating an axis-aligned rectangle covering the area of the line and
using the Pixel Shader to determine where to place pixels. At this
point in time, adding the ability for shading is pretty convenient.
 
S

Stephan Rose

Jan 1, 1970
0
I'll just make believe that I know what you're talking about here.


It's pretty simple really. Both altium and I require DirectX 9.0c for
hardware support. But our rendering techniques vastly differ.

Altium's method is essentially on the bleeding edge of technology.
Since a trace generally has round end caps, it is difficult for a
video card to draw something like this as a video card can only draw
triangles, it can't actually draw anything round. So they solve this
problem by creating a rectangular area (via 2 triangles) that is
axis-aligned with the line. This means that the long sides of the
rectangle are parallel to the line itself and the rectangle is as wide
as the line needs to be. So normally when you pass this to the video
hardware, you would get something that looks like your line, but would
have no round end caps. This is where PS3.0 comes in which stands for
Pixel Shader 3.0. A Pixel Shader program is a small program that is
run for every pixel that is drawn by the video hardware. This started
with version 1.0 and the latest is 3.0 and has quite advanced in
features over the past few years. So altium is using this pixel shader
program to determine for every drawn pixel of this line, if they allow
this pixel to be drawn or if they reject it. This allows them to
reject the pixels at the ends of the line that don't belong to the
round end cap...result is a line with round end caps. As an added
bonus, they can easily modify the drawn pixel color in the program to
do all sorts of effects such as highlighting, shading, etc.

My approach is a little more old-school. Instead of using pixel
shaders I triangulate all the geometric features of the line. Meaning
I create my triangles that compose the main body of the line and I
triangulate the round end caps. So I don't use any pixel shaders at
all, I just create a lot more triangles to the video hardware to
render.
 
B

Brad Velander

Jan 1, 1970
0
Stephan,
I don't currently use Altium's AD versions so my knowledge is not the
greatest at this time. I have it on my desktop at work but I have only used
it for some file conversions because my employer has not committed to
deploying it since shelling out the initial cash. And I don't have time to
bother learning it until they make some form of commitment to it.

My earlier comment about the use of the Shader just shows that I am
definitely not a software person. Why would something called Shader not be
something to control shading. lighting, intensity? Well only a programmer
could answer that one. I don't need an answer, I will remain happy in my
ignorance of software, particularly anything other than enough knowledge
required to suitably operate and maintain my PC.

However with reference to your comment below, I don't believe they just
dim "other layers", they dim everything except for what is selected. So
select a net and the whole net stays visible at normal intensity across all
layers while 'everything' not selected dims or fades by the user adjusted
amount, allowing for a better view of the selected items.

The other problem with 'typical' highlighting is that the highlight
color takes away your ability to visually determine which layer something is
on without queries of the individual primitives/items. Just like with
Altium's older P99SE. That is one way that the new Altium system would
really help.
 
Top