С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
Shpion007
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 40
#1

Как использовать все ядра? - C++

26.01.2013, 21:54. Просмотров 1535. Ответов 10
Метки нет (Все метки)

После компиляции программа использует лишь одно ядро, как заставить использовать весь потенциал процессора? Embarcadero RAD Studio 2010
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.01.2013, 21:54
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как использовать все ядра? (C++):

Оставить все как есть || использовать парсер xml || или использовать struct - C++
Собственно имеется код... #include <io.h> #include <string> #include <vector> #include <fstream> #include <iomanip> #include...

Как несколько раз использовать метод добавления элементов в массивы, если все значения разные - C++
В классе есть метод добавления в массив. Как мне в программе несколько раз использовать этот метод класса, если нужно одновременно...

Как вывести версию ядра операционной системы в приложении? - C++
Здравствуйте, подскажет кто-нибудь как вывести версию ядра операционной системы в приложении.

Дано натуральное число n .Вывести все числа от 1 до n .При решени использовать рекурсию - C++
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> void recursion(int n) { int sum = 0; int i = 0; // Базовыйслучай if (n...

Не могу уничтожить все нечетные элементы. При этом использовать динамический массив - C++
#include <iostream> #include <ctime> #include <windows.h> using namespace std; void Reshape(int *&Array, int &Size){ int...

Зачем использовать delete в небольшой программе, если после закрытия память все равно освободится? - C++
Можно ли использовать new без delete, если программка небольшая, а также если нет класса вообще можно использовать new? И еще, после...

10
palva
2686 / 1913 / 288
Регистрация: 08.06.2007
Сообщений: 7,044
Записей в блоге: 4
26.01.2013, 21:58 #2
Использовать потоки. Подозреваю, что современная операционная система раскидает их по разным ядрам.
0
Shpion007
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 40
26.01.2013, 22:02  [ТС] #3
Цитата Сообщение от palva Посмотреть сообщение
Использовать потоки. Подозреваю, что современная операционная система раскидает их по разным ядрам.
Ооо..., там своя специфика, обсуждалось в одной теме, здесь лучше их не использовать.
0
ValeryS
Модератор
6729 / 5138 / 485
Регистрация: 14.02.2011
Сообщений: 17,245
26.01.2013, 22:04 #4
Цитата Сообщение от Shpion007 Посмотреть сообщение
здесь лучше их не использовать.
Один поток одно ядро
не используешь сиди на одном ядре
0
Shpion007
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 40
26.01.2013, 22:09  [ТС] #5
Цитата Сообщение от ValeryS Посмотреть сообщение
Один поток одно ядро
не используешь сиди на одном ядре
Вот в чём дело...
Например, если ряды считать, или там число ПИ, где простой цикл, как многопоточьность использовать?
0
Somebody
2791 / 1602 / 147
Регистрация: 03.12.2007
Сообщений: 4,200
Завершенные тесты: 1
26.01.2013, 22:14 #6
Цитата Сообщение от Shpion007 Посмотреть сообщение
Например, если ряды считать, или там число ПИ, где простой цикл, как многопоточьность использовать?
Половину слагаемых из ряда в одном потоке, половину в другом.
0
diagon
Higher
1932 / 1198 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
26.01.2013, 22:14 #7
Само название "многопоточность" намекает, что придется создавать несколько потоков.
Другое дело, что можно свалить всю работу на компилятор/openmp/специальные либы.
0
Shpion007
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 40
26.01.2013, 22:17  [ТС] #8
Цитата Сообщение от Somebody Посмотреть сообщение
Половину слагаемых из ряда в одном потоке, половину в другом.
Это простой пример, если же цикл более сложный.

Добавлено через 1 минуту
Цитата Сообщение от diagon Посмотреть сообщение
Другое дело, что можно свалить всю работу на компилятор/openmp/специальные либы.
А как это сделать?
0
Kuzia domovenok
2060 / 1905 / 174
Регистрация: 25.03.2012
Сообщений: 6,556
Записей в блоге: 1
26.01.2013, 22:38 #9
Why Threads Are A Bad Idea(for most purposes)
http://www.stanford.edu/class/cs240/readings/threads-bad-usenix96.pdf
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
27.01.2013, 00:22 #10
Kuzia domovenok, Отлично просто. Статья 96 года. Сейчас 13-ый. В любом крупном проекте используется многопоточность. Статей, которые призывают использовать потоки - море. Вы простите в 96 живете?
0
Jupiter
27.01.2013, 00:32     Как использовать все ядра?
  #11

Не по теме:

Не по теме:

Цитата Сообщение от ForEveR Посмотреть сообщение
Вы простите в 96 живете?
почему же, может просто крутой lock-free programmer

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.01.2013, 00:32
Привет! Вот еще темы с ответами:

Как правильно использовать классы? Как вывести значение класса на экран? - C++
Всех приветствую. Делаю задание по книге. По заданию нужно завести класс, в котором хранится информация о книгах: число выданных на руки...

Как правильно вызвать метод в С++ и как использовать команду goto в default - C++
#include <iostream>; #include <conio.h>; using namespace std; void main() { setlocale(LC_ALL, "Rus"); calculate(); ...

как объявить правильно tr и как его использовать при вызове функции? - C++
main.cpp case 8: cout << "Firs trapec # is: "; cin >> k; k = k - 1; cout << "Second trapec # is: "; cin >> j;...

Как вывести одно значение из массива list? Лучше использовать итератор или как-то по другому? - C++
Здравствуйте! Что бы вывести одно значения из массива list нужно использовать итератор или можно как то по другому?


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.