How can an EE major looking to get into HPC bolster their CS foundation?

Im a soph. EE major with an interest in applied mathematics looking to get into HPC and am looking for suggestions on where to start in terms of reading up on some CS subjects in order to get relatively rigorous understanding of whats really going on. For example im interested in parallel computing, HDL's and so on but that stuff is over my head and im not sure what prerequisite would be needed. I was thinking about starting by learning C++, and or reading through SCIP.

Any advice is appreciated. Thanks.

Hi.

As a student, you can join IEEE for a small cost. The periodicals and magazines are generally 1/2 price. There may be local IEEE groups you can join. For example, there have been many meetings that I have attended, usually luncheon discussions, but often full-day seminars on specific topics arranged by the local IEEE group. I am a member of a local IEEE Innovation Study Group.

The costs will go up after you are no longer a student, but then the membership is great for continuing education and contacts.

At one time, I also belonged to the Welcome and the Homepage | Mathematical Association of America , but the IEEE had more practical use in my career ... cheers, drl

IEEE - The world's largest professional association for the advancement of technology

https://www.ieee.org/membership-catalog/productdetail/showProductDetailPage.html?product=MEMC016&refProd=MEMC016&WT.mc\_id=soc\_mem_computer

IEEE Computer Society - Premier Organization of Computer Professionals

http://www.google.com/search?hl=&q=high\+performance\+computing\+ieee&sourceid=navclient-ff&rlz=1B5_____enUS329US329&ie=UTF-8&aq=1&oq=high\+performance\+ieee

Watching some youtube videos on supercomputing is always a good way to follow the current trends.
Most of our client base uses C# for computing large scale calculation applications. But for the true heavy-duty computations there is really no alternative to C++ on Linux, including from a career perspective. So you will probably delve into g++ and possibly also clang for the extra debugging messages.
A solid understanding of how databases operate and a ready knowledge of how database performance can be increased is also required.
Finally, if you have an nVidia GPU card, there is CUDA for parallelising your application. Else - going really high end - you may have a coprocessor from Intel, such as the Xeon Phi. That in turn requires its own Intel compiler / debugger, which also readily supports parallelism.