Почему захват металлического каркаса «GPU time» полностью отличается от других методовIOS

Программируем под IOS
Ответить
Anonymous
 Почему захват металлического каркаса «GPU time» полностью отличается от других методов

Сообщение Anonymous »


Существует множество способов узнать, сколько графического времени требуется на один кадр.
[*]Навигатор отладки Xcode > Частота кадров > Время кадра > Графический процессор [*]Metal Performance HUD > Графический процессор [*]Измерение вручную с помощью
commandBuffer.addCompletedHandler {буфер в пусть gpuTime = buffer.gpuEndTime - buffer.gpuStartTime } Все эти три метода показывают одинаковые цифры. Но Metal Frame Capture также показывает GPU Time, и это совершенно другое.

Я запускаю Metal Frame Capture программно для области одного кадра, поэтому он должен измерять тот же рабочий процесс.

override func draw(_ rect: CGRect) { пусть captureDescriptor = MTLCaptureDescriptor() captureDescriptor.captureObject = устройство пытаться! MTLCaptureManager.shared().startCapture(с: captureDescriptor) // код кадра MTLCaptureManager.shared().stopCapture() } Но когда все другие методы показывают 14,2 мс, Metal Frame Capture показывает 7,81 мс с состоянием индуцированной производительности, 5,48 мс с максимальным, code>9,48 мс со средним значением и 18,06 с минимальным.

Таким образом, ни при одном из показателей производительности оно даже отдаленно не напоминает число, показанное в другом месте.

Разве мы не должны думать о времени графического процессора, отображаемом в Metal Frame Capture, как об одном и том же, и сравнивать его только с другими временами графического процессора в самом Metal Frame Capture?

Думаю, для сравнения с целевым значением 16,6 мс следует использовать первые 3 метода. С другой стороны, захват кадров графического процессора не следует использовать для сравнения с конкретным целевым временем графического процессора, но он больше подходит для относительно детального сравнения результатов оптимизации?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»