Vulkan extremely slow compared to opengl

Hi! Even when trying to use secondary command buffers with multi-threading vulkan is extremely slow compared to opengl in 2D I’ve 45 FPS (in debug mode) which opengl but only 10 with vulkan! In 3D it’s even worse. Here’s my code : https://github.com/LaurentDuroisin7601/ODFAEG

EDIT : tried in release mode same, extremely slow.

PS : I’ve a GTX1660 super.

Hi! I tried to optimize the code by parallelizing the copies to my staging buffers and the copies to the GPU buffers it runs faster but that doesn’t works, my fragments shaders are executed but it doesn’t display anything…., strange bug….

Hi, I think I’ve found the raison, in vulkan if you don’t parallellize the operations this is slower than opengl…, I gaigned 10 FPS by parallelizing and reducing the number of copies thanks to the staging buffer and secondary commands buffers, I need to do this for all my renderers passes now. I think I’ll parallellize event more with a thread pool and a mini swapchain (double buffering) for offscreen rendering.

Ok so I tried to do some optimization but the FPS is very low. (I’ve done vertex batching, indirect drawing, multi-thread rendering and double buffering) but I’ve only 5-10 FPS with vulkan for the 2D, 30-50 FPS with opengl. I don’t know where the bottle neck is, I tried nsight and the function which takes most the times are the vkWaitForFences function.

Here’s the code : https://github.com/LaurentDuroisin7601/ODFAEG

Ok I’ve found why it was slow I implemented the double buffering badly…, now the FPS is the same than with opengl!!! Solved!!!