libcg / grvk

Vulkan-based Mantle API implementation
https://en.wikipedia.org/wiki/Mantle_(API)
zlib License
221 stars 14 forks source link

mantle: Ignore memory types with propertyFlags 0 #27

Closed K0bin closed 2 years ago

K0bin commented 2 years ago

I'm not that used to C, so there's probably a cleaner way to do this.

Also, I'd appreciate it, if you had any idea for a better name than FilteredVkPhysicalDeviceMemoryProperties. ._.

K0bin commented 2 years ago

To enable this, we are exposing additional host-local memory types:

A memory type for buffers A memory type for color images of any format Separate memory types for depth/stencil images for each depth/stencil format in system memory

https://developer.nvidia.com/what%E2%80%99s-your-vulkan-memory-type

Looks like it's not quite that simple.

sehraf commented 2 years ago

Is this actually fixing #8? I've tried your https://github.com/K0bin/grvk/tree/nv-image-hack branch and it runs on my RTX 2060 (poorly, but it runs at least)

EDIT: merging nv-image-hack in master and it actually runs quit good:

===========================================================
Oxide Games
Star Swarm Stress Test - ©2013
C:\users\michael\Meine Dokumente\Star Swarm\Output_21_10_19_1807.txt
Version 1.10
10/19/2021 18:07
===========================================================

== Hardware Configuration =================================
GPU:        NVIDIA GeForce RTX 2060
CPU:        AuthenticAMD
        AMD Ryzen 7 3700X 8-Core Processor             
Physical Cores:         8
Logical Cores:          16
Physical Memory:        33603399680
Allocatable Memory:     140737488224255
===========================================================

== Configuration ==========================================
API:                Mantle
Scenario:           ScenarioFollow.csv
User Input:         Disabled
Resolution:         1920x1080
Fullscreen:         True
GameCore Update:        16.6 ms
Bloom Quality:          High
PointLight Quality:     High
ToneCurve Quality:      High
Glare Overdraw:         0
Shading Samples:        8
Shade Quality:          Mid
Deferred Contexts (D3D11):      Disabled
Small Batch Optimized (Mantle):     Enabled
Temporal AA Duration:       16
Temporal AA Time Slice:     8
Detailed Frame Info:        Off
===========================================================

== Results ================================================
Test Duration:          58 Seconds
Total Frames:           4043

Average FPS:            68.84
Average Unit Count:     3583
Maximum Unit Count:     5344
Average Batches/MS:     172.60
Maximum Batches/MS:     677.77
Average Batch Count:        3020
Maximum Batch Count:        17156
===========================================================