📜 ⬆️ ⬇️

Intel 0x7DC Summer School through the eyes of one of the participants

This summer I had the opportunity to spend a vacation with benefit and to learn at the summer school of Intel (Intel Summer School) in Nizhny Novgorod. About what was at this internship school and how and why to take part in such programs, I would like to tell students and graduate students of Russian universities.
First, a little about yourself. I am a graduate student of the first year of study in the Smolensk branch of the National Research Institute "Moscow Energy Institute" - a good university (especially by Smolensk standards), but far from top. For this reason, I was very surprised that I even got to Intel Summer School. I was even more surprised that the summer schoolchildren of Intel are not representatives of the well-known universities of Moscow and St. Petersburg (most of them), but residents of the provinces. The geography of this year was very impressive: from Smolensk to Khabarovsk, from Arkhangelsk to Sochi. This fact, if it does not prove, at least makes you think that even being a university student, who is known only in your area, it is worth participating in a summer school competition (and competitions in general), if you don’t mind spending summer to acquire new knowledge, new experience and new acquaintances. However, I just want to warn you: your girl may not approve this idea :).

Training

What is taught in the summer school of Intel? I apologize in advance for some "captaincy", but Intel for the developer is primarily parallel programming. I'll start with it. This year, lecturers at Nizhny Novgorod State University (UNN) gave a course of lectures on technologies and tools for parallelizing programs. It dealt with TBB, Cilk +, Parallel Studio XE and the general principles of High Performance Computing. OpenMP and MPI were taken for independent study, which, in my opinion, is correct, because Many of these technologies are already known. Despite this, the course was too clear. Mainly due to lack of practice. But as a review, the course should be recognized as useful: for those who are not familiar with parallel programming, it can give a starting point for further development.
Not to be unfounded, I will give a list of lectures:
  1. Architecture, aspects of concurrency;
  2. Operating systems, aspects of concurrency;
  3. Technologies for parallel computing: TBB;
  4. Technologies for parallel computing: Cilk +;
  5. Tools for parallel programming. Intel Parallel Studio XE. Prime numbers Sorting;
  6. Tools for parallel programming. Intel Parallel Studio XE. Multiplication of sparse matrices.

It is also worth saying that the course is certification. Successfully tested, Intel Basic Programming Professional Professional certificate was issued. Unfortunately, testing is classic - questions with answers. Nobody asks to write the code, although in some issues it is necessary to understand how it works. So the certificate, in my opinion, says only about the availability of theoretical knowledge of its owner.

In addition to parallel programming in the "curriculum" of the summer school there were, for example, such classes:
  1. Introduction to Business Intelligence.
  2. Algorithms of physical modeling in modern computer games.
  3. Introduction to Agile.
  4. A series of lectures on computer vision: the vision of robots, the recognition of transparent objects, etc.
  5. TBB Flow Graph.
  6. Presentation skills.
  7. Technological entrepreneurship.
  8. Error correction codes.
  9. Public key cryptography.

In addition to them, there were also discussions about Intel itself, its history and modernity, a tour of Itseez with a series of reports on computer vision algorithms and their practical use and demonstration of applications developed by the company. Separately, I would like to mention two more events: a summer school seminar and an idea competition.
Summer School Seminar - this is the most classic student scientific conference. “Rarely boring things,” you will think and you will be right. But there is one thing: this event gives the competition of ideas a contrast, without which, perhaps, the competition itself would not be so interesting. Imagine another speech at the conference, where you have to formally report on the work done (in any case, most students do just that) - it does not matter if someone needs this work or not. Why not participate in this "conference" in the competition. You should participate in contests - I started with this. The whole point is that with this approach - to report on work - with probability one you suffer a fiasco, and this is the beginning of a change in approach. The competition makes you think that in the framework of theses, master's theses, in the framework of research and development it would be good to do something useful, necessary, as stated in the competition, not only to “you and your supervisor”. In many ways, this change of viewpoint is facilitated by communication with members of the jury, each representative of whom has achieved success in the field of science and business.
')

Internship

If knowledge in the summer school of Intel is acquired from the curriculum, then the main experience is gained in the work on the project. Above, I said that Intel for a developer is, first of all, parallel programming (still, it is true, compilers, about which I kept silent). But this is only in the first place - the tasks that summer schoolchildren were supposed to solve were very diverse. This is not only C ++, and not only parallelization technology. Among the areas in which summer schoolchildren worked were computer vision, mobile application development, web application development, Business Intelligence, Data Mining, GUI design and web design [ complete list of tasks ]. The fact that about half of the tasks, in one way or another, included the research component in fact, and not only in setting, was pleasant, too: it was necessary to test some approach, try something in practice, find a new and more effective solution. The other half, mainly related to the development of web applications, are good engineering tasks, developments on which may soon be seen in Intel products.
Intel is also a job in a good team (in any case, this is the TBB team, in which I happened to work), from which you quickly learn from the experience. From the point of view of professional growth, for me, two months of work at Intel in terms of the amount of experience gained can be equated to a year of work at my current workplace (this is without taking into account self-education, only knowledge gained from the team or from the project - books can be read everywhere).

Conclusion

Of course, in the summer it is blasphemous to only work and only learn. There was also a rest: a trip to Svetloyar Lake, a boat trip, but the main thing was to communicate with each other and to acquire new friends and associates.
If we sum up and wonder about the highlight of the summer school of Intel, then the answer will be a practical approach, focus on the desired result, which, in my opinion, is not enough for Russian education and Russian science. If you are interested in the approach and people who cultivate it (not only from Intel), come to Intel Summer School;).

Source: https://habr.com/ru/post/151379/


All Articles