EVgexa01

Пикабушник
629 рейтинг 3 подписчика 10 подписок 39 постов 0 в горячем
Награды:
10 лет на Пикабу
31

Почему игры тяжело делать многопоточными?

Сделал видео о многопоточности в играх, очень хочу послушать критики, так как не уверен обо всем ли я верно рассуждаю. Сам с Gamedev'ом не связан, но занимаюсь программированием на C++

113

Несколько советов по оптимизации кода на C++

1) Вместо использования цикла for() быстрее использовать цикл while(). По той простой причине, что while() был придуман раньше, чем for(), то следовательно while() более низкоуровневый, а следовательно за абстрагирование мы расплачиваемся меньше, что ускоряет наш код.

Несколько советов по оптимизации кода на C++ Программирование, C++, Оптимизация, 1 апреля, Длиннопост

2) если честно, то данной код можно ускорить ещё больше. поскольку оператор ++ является неоптимальным, лучше использовать его аналог =.

Так делали ещё наши деды на Паскале и Фортране, получая код, который просто летал. Я вам больше скажу, при программировании процессоров, работавших на советских космических станциях использовали именно этот оператор. И ведь где, а там нужно высокая эффективность кода.

Несколько советов по оптимизации кода на C++ Программирование, C++, Оптимизация, 1 апреля, Длиннопост

3) Если вам нужно сделать вечный цикл, например как при поиски в ширину, лучше писать while(!false) вместо обычного while(true). поскольку процессор быстрее воспринимает команды с нулями, то и отрицание нуля он будет обрабатывать быстрее, нежели просто единицу. Это сильно ускоряет ваш проход по циклу.

Несколько советов по оптимизации кода на C++ Программирование, C++, Оптимизация, 1 апреля, Длиннопост

4) Описание типа данных для каждой отдельной переменной отдельно также уменьшает затраты процессорного времени. Поскольку вы перекладываете часть работы процессора на себя. Как бы расписывая всё для каждой переменной в отдельности, тем самым "разжёвывая" код, процессору приходиться декодировать значительно меньше данных.

Несколько советов по оптимизации кода на C++ Программирование, C++, Оптимизация, 1 апреля, Длиннопост

5) Ну и последний совет по оптимизации заключается в том, чтобы сократить потребление оперативной памяти при исполнении программы. ОБЯЗАТЕЛЬНО удаляйте все лишние пробелы, табуляции, переходы на новые строки и комментарии. Именно они зачастую являются причиной потребления большей части оперативки и кеша процессора. Вы сами можете увидеть, как код стал более компактным и более читабельным. Если ваш код будет читать другой программист, то на его экранном пространстве также он будет занимать меньше места, соответственно полезного кода будет помещаться больше.

Несколько советов по оптимизации кода на C++ Программирование, C++, Оптимизация, 1 апреля, Длиннопост
Несколько советов по оптимизации кода на C++ Программирование, C++, Оптимизация, 1 апреля, Длиннопост
Показать полностью 5
Отличная работа, все прочитано!