Computer Engineering (and Computer Science)

<p>Hi,</p>

<p>This is (yet) another CS vs CE thread. I have a hard time choosing between CS and CE because it feels like I have to give up one thing over the other (software or hardware).</p>

<p>I was all for CE a few weeks ago, but looking at the CE requirements, CS offers a very attractive alternative and I can still do what I love when it comes time to finding a job. The courses are easier in CS and the salary is also very decent.</p>

<p>It sounds geeky, but I decided that I could be influenced to go back to becoming a CE if I tried to look for some role-models; but I couldn't find any.</p>

<p>I was just wondering if anyone knew of any well-known computer engineers? I found numerous famous computer scientists, but I can't seem to find any well-known computer engineers.</p>

<p>I mean, if there are so many successful computer scientists, then why should I risk taking a stronger courseload to go into CE if CS already offers (some but not all of) what I want to become?</p>

<p>Doesn't sound like a very good reason to pick a major. </p>

<p>CE and CS are different majors. CE is engineering. You will take classes with engineers. You will take quite a few EE and CS courses. </p>

<p>CS goes more into the theory of programming languages and compiler theory. CS majors have electives that they can focus on hardware if they want but they still won't be up to what a CE does. A CE also has electives which they can spend on CS or EE focus. Once again, they still won't be up to either of those majors. </p>

<p>EE/CS is a popular dual major for those reasons.</p>

<p>Actually, looking over the requirements for CS/CE, they have a lot of courses that overlap.</p>

<p>You won't find very famous CE's because that degree is much newer than CS.
I would also recommend you to set an example of success yourself rather than following in the footsteps of others.</p>

<p>I think CE>CS because it simply gives you more diversity of knowledge, but it ultimately depends on whether you're more interested in software and mathematics (algorithms, etc), or hardware and software (and their interactions).</p>

<p>^^^ This is correct.</p>

<p>The famous "computer scientists" may not even have computer science degrees. They are scientists who worked with computers. And yes CE degrees have not been around as long as CS degrees. </p>

<p>CE is a strong program in my opinion because it deals very strongly with software but also teaches students how software interacts with hardware. In my embeddes systems class we are requires to purchase a controller and program with assembly and C.</p>

<p>Steve Wozniak. I don't see how you can get a better famous CE than that.</p>

<p>
[quote]
but it ultimately depends on whether you're more interested in software and mathematics (algorithms, etc), or hardware and software (and their interactions).

[/quote]
</p>

<p>I think that sums it up very nicely. Now I have to decide too.</p>

<p>Hardware theoretically is reaching its peak, atleast thats what some say. Software on the other hand is limitless.</p>

<p>I chose CS in my undergrad because that's what I enjoyed. My school considered a CS degree a engineering degree. It says so on the diploma, and I had to take all the pre-reqs regular engineers do. So some schools consider it engineering and some don't. Some schools even have philosophy classes which tackle this very issue. </p>

<p>If you want to be famous, school isint going to make you that. Either you have it or you dont. Its alike a artist going to art school. Art schools don't turn out famous artists.</p>

<p>It's not a matter of being famous or not; it just seems like all well-known innovators today all came from CS backgrounds, and I have found very few that come from CE. That is the point I am trying to make.</p>

<p>Personally, I don't mind a lot of programming nor learning about hardware. </p>

<p>If CS offers a stronger opportunity for creativity, then I don't see why CE would be a better choice than CS if both majors contain relatively same courses.</p>

<p>Do what i did then. Do CE and test the waters, when you get through your first DC circuits class, you will know whats bests for you. I didn't like it, actually I learned that in Physics. So I switched to CS and don't regret it.</p>

<p>CS and CE are about 80-90% the same (varies with the school) and end up often competing for the same jobs. At some colleges it's the same degree. Just take what you find is more interesting. It isn't like you attain all your education once you achieve your degree anyway. Once you land a job after graduation that's when you'll start to learn the specifics needed for that job whether it be more HW oriented or more SW oriented.</p>

<p>"Hardware theoretically is reaching its peak"</p>

<p>No!</p>

<p>The majority of Physicists as well as EE would disagree.</p>

<p>I've been watching great achievements at Intel for several years and they have a roadmap to continue improvements for at least several more years. The gains in hardware performance in several metrics in the last few years is breathtaking to this software guy.</p>

<p>Hardware is definitely not reaching its peak...</p>

<p>Unless we move away from the transistor, it can only get so small(size of a atom). The smaller it gets the more each transistor succumbs to interference and the the more we add the hotter each die gets. The current move to multicore systems shows a slowing down of development. Sure there may always be little tricks people can do to get out more performance, but eventually we will hit a place where there really is no need for further development of transistor based computers. </p>

<p>I never said we have reached the peak, I said we are approaching it. Moores law has already failed if you use its strict definition. Moore himself has even states that It can't continue forever. The nature of exponentials is that you push them out and eventually disaster happens", read about it
Techworld.com</a> - Moore's Law is dead, says Gordon Moore</p>

<p>There are different opinions, such as the paper on Universal Limits on Computation, all depends who you believe. I take the physical limitations of the transistor as the truth. I don't believe we will meet the cooling requirements and I really don't think we will ever get a transistor smaller than a atom.</p>

<p>"Unless we move away from the transistor, it can only get so small(size of a atom). The smaller it gets the more each transistor succumbs to interference and the the more we add the hotter each die gets."</p>

<p>We have processors with more transistors with better performance per watt than ever before.</p>

<p>"The current move to multicore systems shows a slowing down of development."</p>

<p>AMD went to multicore processors because their process stinks compared to Intel's. Intel also went to multicore as there was a tangible benefit to multicore but they have also been very busy with process improvments and other IPC improvements.</p>

<p>"I never said we have reached the peak, I said we are approaching it."</p>

<p>It's always more accurate to just quote what you said as opposed to reparsing it.</p>

<p>We're a long way off from getting to an atom transistors if they are even possible. There are a lot of things that can be done outside of shrinks too. I wouldn't make a career choice on EE vs CS on the myth that EE is a dead end.</p>

<p>The current move to multicore systems shows a slowing down of development. Sure there may always be little tricks people can do to get out more performance, but eventually we will hit a place where there really is no need for further development of transistor based computers.</p>

<p>Besides what does it matter if hardware does reach it's limit? Most of us aren't going to be designing CPU's for Intel. Most CompE's simply design embedded systems using microprocessors and microcontrollers designed by someone else.</p>

<p>Process work done by Intel and the consortium should eventually benefit other chip designers that depend on fabs.</p>

<p>
[quote]

We have processors with more transistors with better performance per watt than ever before.

[/quote]

I never said we didn't, in fact that goes along with my argument, ya know the one that we are reaching the limit. </p>

<p>
[quote]

AMD went to multicore processors because their process stinks compared to Intel's. Intel also went to multicore as there was a tangible benefit to multicore but they have also been very busy with process improvements and other IPC improvements.

[/quote]

Actually Amd's global manufacturing process has been noted as superior to intels, which reflects in its prices. They are currently suffering for other reasons. Its also a lot harder to manufacture multicore chips then single ones. The number of die's which don't meet quality standards are almost 4x higher than a single die. So its not really a direction a failing company would want to take, which is reflected in their current offerings. </p>

<p>The real reason there was a move to multicore processors was the manufactures inability to increase processor power via a increase in processor speed, which was the norm for a long time. So the good old technique of divide and conquer was used as well as parallelization.</p>

<p>As for Process and IPC improvements, they have basically been the same for quite a long tie and aren't changing anytime soon. Infact, no major OS really even uses the functionality anymore built into hardware, as its not even viable. About 99% of OS IPC is based on software methods. Atleast that is my opinion based on my experience in kernel development for Linux. That is if you are talking about inter process communication rather than instructions per clock cycle which is also known as IPC.</p>

<p>"I never said we didn't, in fact that goes along with my argument, ya know the one that we are reaching the limit. "</p>

<p>Those that make nebulous statements say nothing.</p>

<p>"Actually Amd's global manufacturing process has been noted as superior to intels, which reflects in its prices."</p>

<p>Where has it been noted as superior? How about a link? Who made 45 nm processors first? Were there remarkable performance per watt gains? Why is AMD using a 5-year-old mobile design? Who is winning 90% of mobile designs? What is AMD's answer to Atom?</p>

<p>"They are currently suffering for other reasons. Its also a lot harder to manufacture multicore chips then single ones. The number of die's which don't meet quality standards are almost 4x higher than a single die. So its not really a direction a failing company would want to take, which is reflected in their current offerings."</p>

<p>Intel has been making multicore chips for years. They don't seem to have the yield problems that AMD has. Perhaps it's due to a better process! AMD is going to a foundry model so that will further decouple process from design. It's hard to see how AMD is going to improve process here. AMD is in serious financial trouble - Barcelona was a total bomb in 2007.</p>

<p>"The real reason there was a move to multicore processors was the manufactures inability to increase processor power via a increase in processor speed, which was the norm for a long time. So the good old technique of divide and conquer was used as well as parallelization."</p>

<p>For AMD, sure. Though they did improve IPC in other ways after X2.</p>

<p>"As for Process and IPC improvements, they have basically been the same for quite a long tie and aren't changing anytime soon."</p>

<p>Is all of your reading four years out-of-date?</p>

<p>"Infact, no major OS really even uses the functionality anymore built into hardware, as its not even viable. About 99% of OS IPC is based on software methods. Atleast that is my opinion based on my experience in kernel development for Linux. That is if you are talking about inter process communication rather than instructions per clock cycle which is also known as IPC."</p>

<p>Why would anyone think about an operating system method in the context of a hardware performance discussion.</p>

<p>Have you ever heard of Macro-Ops Fusion?
Have you seen MMX, SSE, SSE2, SSE3, SSSE3, SSE4? Have you seen the architecture changes to go to 256 bit vector units in x86 processors? Have you heard of x86-64?</p>

<p>IPC improvements from Core to Core 2 were huge. They were small in the move to Penryn. They will again be large in going to Nehalem. IPC. It's not just for breakfast anymore.</p>