Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Xors3D

Xors3D Графический движок с поддержкой DirectX9

Ответ
 
Опции темы
Старый 27.10.2016, 23:51   #1
tirarex
Бывалый
 
Аватар для tirarex
 
Регистрация: 23.11.2011
Сообщений: 863
Написано 334 полезных сообщений
(для 866 пользователей)
Не полная загрузка системы

Решил продолжить разработку своего хоррора.
Столкнулся с проблемой. Фпс конечно стабильный и высокий,
Но загруженность цп/гпу всего 50-60%, оперативки свободно много, проект на ссд, подгрузок в риалтайме не делает.

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

ОРИГИНАЛ СКРИНШОТА ТУТ https://www.dropbox.com/s/cizhygorht1svic/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82%2 02016-10-27%2023.47.35.png?dl=0

и более корректный https://www.dropbox.com/s/japxhmhtbv...28.22.png?dl=0

(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 00:42   #2
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,354
Написано 2,470 полезных сообщений
(для 6,850 пользователей)
Ответ: Не полная загрузка системы

Delay(1) в цикл впердоль
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 01:07   #3
tirarex
Бывалый
 
Аватар для tirarex
 
Регистрация: 23.11.2011
Сообщений: 863
Написано 334 полезных сообщений
(для 866 пользователей)
Ответ: Не полная загрузка системы

Сообщение от Randomize Посмотреть сообщение
Delay(1) в цикл впердоль
та же хрень
(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 01:08   #4
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Не полная загрузка системы

А ты уверен что Xors3D + Blitz3D умеет мульти-поточно?
Если там и есть пару потоков, и они не динамично создаются, а изначально выделены под разные сферы, там может быть не эфективно распределено, и приводит к тому что не все ресурсы используются.

Но я сомневаюсь что там вообще что-либо мульти-поточно.
(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 01:21   #5
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,354
Написано 2,470 полезных сообщений
(для 6,850 пользователей)
Ответ: Не полная загрузка системы

Нет, не та же.
Если убрать Delay, то будет сжираться всё процессорное время первого ядра как на первом скрине.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 01:27   #6
tirarex
Бывалый
 
Аватар для tirarex
 
Регистрация: 23.11.2011
Сообщений: 863
Написано 334 полезных сообщений
(для 866 пользователей)
Ответ: Не полная загрузка системы

Сообщение от Randomize Посмотреть сообщение
Нет, не та же.
Если убрать Delay, то будет сжираться всё процессорное время первого ядра как на первом скрине.
я второй скрин кинул, на первом я альттабался кое куда.

Сообщение от moka Посмотреть сообщение
А ты уверен что Xors3D + Blitz3D умеет мульти-поточно?
Если там и есть пару потоков, и они не динамично создаются, а изначально выделены под разные сферы, там может быть не эфективно распределено, и приводит к тому что не все ресурсы используются.

Но я сомневаюсь что там вообще что-либо мульти-поточно.
Так проц отдыхает по полной, вся нагрузка на видеокарте. А они тоже ничего особо не делает. Если включить все пост эффекты то фпс проседает, но нагрузка не поднимается.

Вангую ограничение ксорса. Но как его убрать...
(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 02:55   #7
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,354
Написано 2,470 полезных сообщений
(для 6,850 пользователей)
Ответ: Не полная загрузка системы

Минуточку, плохо прочитал первый пост:
Столкнулся с проблемой. Фпс конечно стабильный и высокий,
Но загруженность цп/гпу всего 50-60%
Советую почитать каким образом происходит расчёт этих показателей и что такое единица вычислительной мощности.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 04:08   #8
tirarex
Бывалый
 
Аватар для tirarex
 
Регистрация: 23.11.2011
Сообщений: 863
Написано 334 полезных сообщений
(для 866 пользователей)
Ответ: Не полная загрузка системы

В общем, хз как считает ProcessExplorer, но Msi afterburner показывает 100% нагрузку, что странно...

Еще вроде hyper threading делает свое дело и нагрузка идет не на 1 ядро а на 2.
(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 07:20   #9
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Не полная загрузка системы

У тебя какой-то твининг используется (не знаю есть ли он в ксорсе)? Установи для него больше кадров в секунду.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 13:38   #10
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Не полная загрузка системы

Блиц всю жизнь был однопоточный.
Ни hyper-threading, ни большое количество ядер процессора не смогут его заставить работать на больше чем одно ядро.
В лучшем случае будет Блиц на одном ядре, всё остальное — на другом (если их два).
Если в Блице включена вертикальная синхронизация, то FPS ограничен 60 Гц, и, если кадр отрисовался быстрее, то Блиц будет просто ждать, пока не придёт время делать новый кадр и в этот момент процессор грузить не будет, поэтому при включённой ВС Блиц не может сожрать больше определённого процессорного времени. Если отключить, то будет жрать сколько найдёт (а надо ли?).
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 28.10.2016, 17:49   #11
Arton
Быдлокодер
 
Аватар для Arton
 
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,019
Написано 2,312 полезных сообщений
(для 5,349 пользователей)
Ответ: Не полная загрузка системы

Сообщение от ABTOMAT Посмотреть сообщение
то FPS ограничен 60 Гц...
Извините, не могу не уточнить, ограничения по монитору(!), и не как иначе, если монитор 75Гц или больше, столько и FPS будет.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
St_AnGer (29.10.2016)
Старый 29.10.2016, 02:01   #12
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Не полная загрузка системы

Сообщение от ABTOMAT Посмотреть сообщение
Блиц всю жизнь был однопоточный.
Ни hyper-threading, ни большое количество ядер процессора не смогут его заставить работать на больше чем одно ядро.
В лучшем случае будет Блиц на одном ядре, всё остальное — на другом (если их два).
Скрупулёзности ради: физическое ядро, на котором крутится приложение может меняться операционной системой хоть каждый момент получения процессорного времени, если только не задана жёсткая привязка. (отсюда и известная проблема с QPC)
Опять-таки: что понимать под "блитц". Например, я всю логику (а она, в моей задаче, существенно тяжелее картинки) выпихивал в Си-шную DLL, там делал сколько надо потоков. Блитц, в "нужный момент" вызывал блокирующую функцию из длл-ки, которая поднимала volatile флаг, отслеживаемый потоками (вычисления шли беспрерывно) и уходила в спячку. Поток, обнаружив флаг, отгружал в память последние расчётные данные, опускал флаг и возбуждал событие, вызывающая функция просыпалась по событию и разблокировала выполнение Блитца. Память для обмена создавала длл-ка и сообщала адрес "блитцу".
Но если речь о рендере движком (а не подготовке данных для этого) - то да: блитц однопоточен.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Эти 5 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
ABTOMAT (29.10.2016), Arton (29.10.2016), DarkInside (04.11.2016), RegIon (29.10.2016), St_AnGer (29.10.2016)
Старый 29.10.2016, 21:04   #13
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Не полная загрузка системы

Ок, я говорил только про самый общий случай.
ЭЛТ-моник 120-герцовый сейчас мало у кого.
Самодельные крестовые либы с потоками как правило тоже не рассматриваются
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 04.11.2016, 02:33   #14
DarkInside
Разработчик
 
Аватар для DarkInside
 
Регистрация: 08.08.2011
Сообщений: 505
Написано 191 полезных сообщений
(для 369 пользователей)
Ответ: Не полная загрузка системы

Поделить экран на 4 и рендерить в 4 отдельных процессах с бесшовными окнами, синхронизацией и глобальной мышью через winapi?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Randomize (04.11.2016)
Старый 04.11.2016, 04:31   #15
Arton
Быдлокодер
 
Аватар для Arton
 
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,019
Написано 2,312 полезных сообщений
(для 5,349 пользователей)
Ответ: Не полная загрузка системы

Сообщение от DarkInside Посмотреть сообщение
Поделить экран на 4 и рендерить в 4 отдельных процессах с бесшовными окнами, синхронизацией и глобальной мышью через winapi?
О боже! Нет! Как тебе это в голову пришло!
Месье знает толк... Уж лучше библиотеку FastPointer использовать.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Arton за это полезное сообщение:
DarkInside (04.11.2016), Randomize (04.11.2016)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 18:11.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com