11 / 11 / 5
Регистрация: 05.10.2016
Сообщений: 122
1

Как заставить программу использовать больше ресурсов процессора?

05.03.2017, 11:48. Показов 4148. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как заставить программу использовать больше ресурсов процессора?


Возможно ли вообще, в принципе, заставить программу использовать больше ресурсов процессора? Как видите, она использует только 13%, остальные 87 расходуются на бездействие системы. Запускал, если что, из среды, в режиме debug. (может из-за этого так?)


Вот код, кому интересно (только не смейтесь).
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#include <fstream>
#include <cmath>
#include <iostream>
#include <ctime>
#include <iomanip>
#include <vector>
 
using namespace std;
 
ifstream in ("input.txt");
ofstream out ("output.txt");
ofstream lout ("log.txt");
 
void showTime (double tiks) {
  int sec = tiks / CLOCKS_PER_SEC;
  int _min = sec / 60;
  int hour = _min / 60;
  sec = sec % 60;
  _min = _min % 60;
  lout <<
        "Time: " <<
        hour << ':' <<
        _min << ':' <<
        sec
  << endl;
}
 
 
int main() {
  vector<double> sinus;
  sinus.push_back(0);
  vector<int> slag;
  double slagaemoe_ans[20] = {};
  for (int i = 1; i <= 181; i++) {
    if (sin(i) > 0) {
      sinus.push_back(sin(i));
      slag.push_back(i);
    }
  }
  double sum = 0;
  for (int i1 = 1; i1 < 92; i1++) {
    lout << "i1 " << i1 << ' ';
    showTime((double)clock());
    lout << "-----------------" << endl;
    for (int i2 = i1; i2 < 92; i2++) {
      lout << "i2 " << i2 << ' ';
      showTime((double)clock());
      lout << "-----------------" << endl;
      for (int i3 = i2; i3 < 92; i3++) {
        lout << "i3 " << i3 << ' ';
        showTime((double)clock());
        lout << "-----------------" << endl;
        for (int i4 = i3; i4 < 92; i4++) {
          lout << "i4 " << i4 << ' ';
          showTime((double)clock());
          lout << "-----------------" << endl;
          for (int i5 = i4; i5 < 92; i5++) {
            lout << "i5 " << i5 << ' ';
            showTime((double)clock());
            lout << "-----------------" << endl;
            for (int i6 = i5; i6 < 92; i6++) {
              for (int i7 = i6; i7 < 92; i7++) {
                for (int i8 = i7; i8 < 92; i8++) {
                  for (int i9 = i8; i9 < 92; i9++) {
                    for (int i10 = i9; i10 < 92; i10++) {
                      for (int i11 = i10; i11 < 92; i11++) {
                        for (int i12 = i11; i12 < 92; i12++) {
                          for (int i13 = i12; i13 < 92; i13++) {
                            for (int i14 = i13; i14 < 92; i14++) {
                              for (int i15 = i14; i15 < 92; i15++) {
                                for (int i16 = i15; i16 < 92; i16++) {
                                  for (int i17 = i16; i17 < 92; i17++) {
                                    for (int i18 = i17; i18 < 92; i18++) {
                                      for (int i19 = i18; i19 < 92; i19++) {
                                        for (int i20 = i19; i20 < 92; i20++) {
                                          if ((i1 + i2 + i3 + i4 + i5 + i6 + i7 + i8 + i9 + i10
                                               + i11 + i12 + i13 + i14 + i15 + i16 + i17 + i18 + i19 + i20 == 200) &&
                                              (sinus[i1] + sinus[i2] + sinus[i3] + sinus[i4] + sinus[i5] + sinus[i6] + sinus[i7] + sinus[i8] + sinus[i9] + sinus[i10]
                                              + sinus[i11] + sinus[i12] + sinus[i13] + sinus[i14] + sinus[i15] + sinus[i16] + sinus[i17] + sinus[i18] + sinus[i19] + sinus[i20]) > sum) {
                                                sum = sinus[i1] + sinus[i2] + sinus[i3] + sinus[i4] + sinus[i5] + sinus[i6] + sinus[i7] + sinus[i8] + sinus[i9] + sinus[i10]
                                              + sinus[i11] + sinus[i12] + sinus[i13] + sinus[i14] + sinus[i15] + sinus[i16] + sinus[i17] + sinus[i18] + sinus[i19] + sinus[i20];
                                              slagaemoe_ans[0] = i1;
                                              slagaemoe_ans[1] = i2;
                                              slagaemoe_ans[2] = i3;
                                              slagaemoe_ans[3] = i4;
                                              slagaemoe_ans[4] = i5;
                                              slagaemoe_ans[5] = i6;
                                              slagaemoe_ans[6] = i7;
                                              slagaemoe_ans[7] = i8;
                                              slagaemoe_ans[8] = i9;
                                              slagaemoe_ans[9] = i10;
                                              slagaemoe_ans[10] = i11;
                                              slagaemoe_ans[11] = i12;
                                              slagaemoe_ans[12] = i13;
                                              slagaemoe_ans[13] = i14;
                                              slagaemoe_ans[14] = i15;
                                              slagaemoe_ans[15] = i16;
                                              slagaemoe_ans[16] = i17;
                                              slagaemoe_ans[17] = i18;
                                              slagaemoe_ans[18] = i19;
                                              slagaemoe_ans[19] = i20;
                                              out << sum << endl;
                                              for (int i = 0; i < 20; i++) {
                                                out << slagaemoe_ans[i] << ' ' << endl;
                                              } out << "--------------------" << endl;
                                          }
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
  out << sum << endl;
  for (int i = 0; i < 20; i++) {
    out << slagaemoe_ans[i] << ' ' << endl;
  }
  cin.get();
  return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.03.2017, 11:48
Ответы с готовыми решениями:

Как заставить программно использовать всю мощность процессора?
при вычислении есть ли число совершенное очень долго приходится ждать консольную обработку, можно...

Как заставить программу работать вечно, без пожирания ресурсов?
как я понимаю на это способны службы, но как консольное приложение превратить в службу?

Заставить программу использовать только модем вместо Wi-Fi
Здравствуйте! Не знаю как правильно сформулировать вопрос гуглу - чеего только не перепробовал -...

Как заставить программу использовать \system32\shell32.dll, а не \путь к проге\Interop.Shell32.dll
Это неудобно для Portable программы..

1
Evg
Эксперт CАвтор FAQ
21275 / 8292 / 637
Регистрация: 30.03.2009
Сообщений: 22,656
Записей в блоге: 30
05.03.2017, 12:36 2
Вероятно, у тебя процессор 8-ядерный либо "8-поточный" (как любят говорить маркетологи). В этом случае полная загрузка одного процессора соответствует 12.5% (ну или округлённо 13%) от общей загрузки, выраженной в маркетинговых попугаях. Т.е. загрузка в 100% маркетинговых попугаев соответствует полной загрузке всех ядер

Добавлено через 2 минуты
Собственно, я уже пояснял про это
Полное использование ядер процессора
1
05.03.2017, 12:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.03.2017, 12:36
Помогаю со студенческими работами здесь

Как заставить Twebbrowser использовать Javascript
Как заставить Twebbrowser использовать Javascript и в какой процедуре вызвать эту Javascript-функцию

Как заставить Clang использовать MinGW по умолчанию?
Приветствую, форумчане. Я пишу на C++ в среде Windows 10 (x64). В качестве компилятора использую...

Как заставить Resident Evil 5 использовать лицензию?
Установил RESIDENT EVIL 5(лицензия),но при запуске игры,запускается другая игра которая уже стояла...

Как заставить Postgres использовать определенный индекс
Есть запрос SELECT DISTINCT &quot;Field1&quot; FROM &quot;Table&quot; WHERE &quot;Field2&quot; LIKE 'val1%' AND...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru