First comparison of Vulkan API vs OpenGL ES API on ARM
Вставка
- Опубліковано 19 жов 2016
- Vulkan API supports multithreading, which is particularly important for mobile platforms. Multithreading enables the system to balance the workload across multiple CPUs, allowing for lower voltage and frequency. The results give considerable energy savings compared to OpenGL ES API.
Stay connected with Arm:
Website: arm.com/
Twitter: / arm
Facebook: / arm
LinkedIn: / arm
Instagram: / arm - Наука та технологія
I've noticed a big improvement in Doom with Vulkan API.
9998FPS to 9999FPS
If Vulkan becomes the industry standard then Linux gaming will truly become a reality and we will finally be free from the monopoly of Microsoft and DirectX...
Great words! Especially since Nvidia recently released their new RTX card series with support for real-time ray tracing and is currently working on adding those features to both DX12 and Vulkan and Microsoft is of course trying to make a "standard" API for the new technology (that will only work with their shitty operating system). Soon enough AMD will release their own cards with real-time ray tracing support and we all know that Vulkan + AMD GPUs complement each other much more than Vulkan + NVIDIA, and Vulkan is overall much faster and more efficient than DX12, so I think this turn of events (new technology being released) will wake the AAA devs up and they finally switch to a more efficient crossplatform API as their main API, there for AMD GPUs will rise, and Linux gaming will finally become a thing!
yea that would be possible if even developers would leave that monopoly
Sadly we're still seeing AAA devs suck DX's dick
Doubts, programming in Vulkan its more time and effort and I don't think many developers will see the gains worth it, many games use Vulkan today and unfortunately have no linux ports, id software in particular.
I don't mind Windows...
Thank you AMD for Mantle. Vulkan took Doom 2016 on my FX 6300 from 45 fps minimums to minimums of 90fps on Ultra. On weaker processors, reducing the load on the master core dramatically boosts performance. It's necessary for arm processors
@@Showz333you cant. Its an software. And even if, what if the AI fails? Its basically impractical for you to add AI to Vulkan.
@@Showz333also, its a rendering software. Not designed as an AI one.
What they don't tell you is how much of a pain it is to use the vulkan api compared to opengl ;)
Getting better with intermediate libraries. Being able to deal with something as big as the graphics API that handles everything in every case without a layer to handle your special case is a bad smell from the API anyway.
Great Comparision Guys :-) Optimalization of code is the most important in this time :-)
There isn't one optimization
Amazing comparison! Now implement it in current applications and games.
Easier said then done!
My emulator went from 20-30 FPS to 50-60 FPS when I switched from OpenGL to Vulkan
its possible to use it with some games?
@@projectumbrellacorporation5130 hmm idk
when a game supports vulkan
Tekken 6 runs Buttery smooth with vulkan emulation on my phone
@@PrakashSingh do you play tekken 7 in mobile?
How
My laptop GTX 1050 runs smothly DOOM Eternal with many enemies on screen with alot of effects and stuff going on in my screen , capped at 60 fps with no lag at all
Vulkan is the future !
Well explained. Thanks!
Fun fact: try cross your eyes while watching this video, you'll get 3D effect without 3D glasses!
That's amazing!
Vulkan is a great thing for better performance and or less power consumption, but as far as I know it is terribly difficult to program in Vulkan compared to OpelGL...
i think thats mostly due too the prevalence of opengl, it will get easier
@@anchorbubba I heard that you have make every single piece, every single little piece by yourself and it will takes 5 hours just to draw a triangle...
@@letmedwight idk if thats exactly true, either way tools will be developed
@@anchorbubba The reason why vulkan is that efficent is that you don't use a simplified interface like OpelGL.
Vulkan can directly spreaks to your hardware without a simplified interface but in this case, you have to make everything by yourself as I know...
Bro, game devs will still use vulkan api even if its a Programming Nightmare, as long as the OS natively supports it..openGL can do everything dx11 can do, but game devs use dx11 because windows-os natively supports dx11
Vulkan é impressionante. Consigo rodar o Aerofly FS 2 em configurações ULTRA HIGH no meu modesto notebook graças ao Vulkan. Os FPS triplicaram.
seria impressionado if someone can't understand the first sentence
Thank you AMD. Now to get HSA fully up and industry wide.
to be honest I can put anything into a video side by side with stats. What I want to see are demos that we can pull apart and test ourselves :)
There you go: www.phoronix.com/scan.php?page=article&item=haswell-gl-vulkan&num=1 (on page 2)
The software's name for generating the results is PTS, it's free software, you can try it on your pc.
What's the background music used?
AWESOME :D
That's all well and good but how about fixing the half baked drivers or implementing geometry and tessellation shader support in your current T880 Vulkan drivers?
Yowan Rdotexe don't expect the drivers to get fixed anytime soon, android video drivers are always lightyears behind anything desktop and never get updated.
Hi! I'm a developer and love a bit graphic programming :-) Actually, Vulkan API is hm... A BIT harder than OpenGL :-D And it's also currently unsupported on old device. In your opinion, is there any strong reason to use it now (not energy I mean)?
It's not so much harder as more verbose. There's nothing actually ''hard'' about it. As in, it's well documented, makes sense and if you can figure out graphics processing in general you can figure out Vulkan. It takes a lot more work to use it, but you'll eventually create a wrapper that makes it more convenient for the functionality of your programs.
The API is quite brilliant in how specific it is and that specificity should make it much more interesting to code once you get used to all the functions and what they're doing.
There's a steeper learning curve and there's more to learn, but in the end I find that all the hard work makes it easier to achieve what you want to achieve with a more accurate perception of whats actually happening.
@@RMLLcrazy It's not hard for people already deeply familiar with graphics API's and algorithms and what not. I would hate to think what it's like for someone new to graphics, It would be better to start with OpenGL first :)
Learn mathematics and make your own graphic API
where can we get this demo?
厉害👍
Ok but where are my Vulkan games
Hector N Doom 2016
Hector N Easier said than done. Vulkan is a LOT harder to code with than OpenGL. XD
Talos Principle
Who cares, look at dat tech demo, it's dope lol
You can see the supported games from here
en.wikipedia.org/wiki/List_of_games_with_Vulkan_support
Yep this guy us right! Launched pubg mobile with Vulcan instead of Open GL 2.0 and I played for an extra 1 hour and got 5-10 FPS more than Open GL 2.0. Reccomended!
Before: 52 FPS - 58 FPS, 3 hour playtime at HDR graphics setting at "Extreme" fps setting.
After: 58 FPS - 60 FPS, 4 hour playtime at HDR graphics at "Extreme" fps setting.
If you are wondering how I got to launch it with Vulcan, I used an app called GFX+ tool. Its a payed app but I am sure you can get it APK for free.
People's disbelief today sums up in quote from series "Lost world" - where the professor said "Dinosaurs doesn't exist" while sitting on ones tail xD
the only problem is that setting Vulkan up takes like 3 times more than setting OpenGl up
Make your own 3D graphic API.
@@kafirmohallida8486 would you be kind enough to point me to where to learn that
Vulkan less CPU use, Optimal on GPU👍
Ultimate DRAGSTAR of course
Wow, just wow! But how is the API compared to OpenGL?
lol 3 dislikes ? are those microsoft dx fans ?
why are you guys copying me? wtf
This is the funniest reply chain I have seen in a while🤣
@@obeid5208 oh no someone copied your youtube comment😭
lol using vulkan to train neural networks, legit stuff man.
Nintendo Switch is benefiting because of this.
no, switch uses nvidia custom low level api..
There is a surprisingly little amount of people talking about how wide this video is
ikr, i kept scrolling up lmao
@@SomeRandomPiggo Yes, it looks like it's scrolled down
Wow!
I love it. I always knew bad software was holding us back.
Interesante. Saludos desde España
cool
Who here tried to scroll up?
Tried and failed
So Vulkan is a cross platform API and this is what it's vapable of? I'd say it's the future of gaming, but that test was on CPU only. This does mean that using integrated graphics will be better with Vulkan! I'll have to check for a GPU demo. Also, imagine what a platform could do with this and the new AMD Ryzen chips that have Vega graphics. That means portability! The future *looks* bright for portable games
Toto Ze true that. I wish I could test multiple engines that support both OpenGL and Vulkan. Preferably engines confirmed to have been made by professionals.
GTA 5 engine needs to support Vulkan!
that would be really awesome, my cpu would cry of luck
Vulkan it's only for phone's.
Repne RAGE*
Can you run Wolfenstein II The New Colossus on your phone ?
Senior c56edfrq vulkan isn't just for phones
Doesn't show the version that they are using...
so,who is better?
I got enforcement of Vulkan usage on my smartphone custom ROM (Octavi OS android 12).
the problem is this: I install vdxk and why does it launch 11direct
Vulkan Api: *Destroys OpenGl*
Epic Games: *Good let's use OpenGl for run Fortnite Mobile*
Vulkan isn't some magic program which makes your program run faster. It would be very difficult for fortnire to implement vulkan over their engine.
@@vitulus_ true, but Vulcan is a better API and they should work on creating a Vulcan back-end sometime in the future
On Samsung devices it is Vulcan api and on apple it is metal api
@@WillFaustCuber How much market share of Android devices is Vulkan supporting ?
@@SerBallister most I believe. All modern snapdragons support it.
How can I enable vulkan?
My device supports it.
It Doesnt appear in developer option only default and skia
ေကာင္းတယ္
OpenGL: Works
Vulkan: Your graphics card is not compatible with vulkan
Yeah long story short nobody gives fuck about Vulkan on mobile.
oem manufacturers waiting for qualcomm's updated vk drivers
I try Vulkan, norm...but where hardware?
There is no Vulkan "hardware", the manufacturers of your GPU need to have a driver for Vulkan, in order for Vulkan to work.
Many thanks to AMD's Mantle API.
Why mali G72 is not compatible with vulkan?
Why do you say it isn't?
The widest video I've ever seen.
good vulcan...
Run same graphics sequence with same quality and frame rate and test who consume less energy than other is more important in my case vulkan is better option but not all apps are optimize for vulkan in the other hand it doesn't matter what api you use 😭
But what about male models
Wow this video is straight up abnormally wide
the bad thing, is that vulkan is more tedious to program than opengl.
me watching this after play Doom Eternal which uses Vulkan
very good but you didn't give us the vulkan cpu percentage per core cause i dont really trust the graphs that you gave us i trust numbers :)
cause after all if you really want OpenGL Es to use 4 threads you can do it, you just have to devied the screen by 4 and set 4 cameras for each part of the screen :)
Then you draw the scene 4 times so not really good. :(
'set 4 cameras for each part of the screen' i see you don't know how graphics works.
opengl, and opengl es has a system called contexts, and a context is what manages every call you make to the opengl API for that specific window but the issue is that these contexts are not thread-safe, meaning you cannot call to them from other threads. you cannot just make '4 cameras' for each part of the screen and run it on 4 threads, otherwise you'd be creating four contexts and fitting th em into a screen, setting up four vertex/index buffers with the exact same info, as well as textures, etc., and then making four different API calls to draw over just 1. that would be horrendous performance wise, and a massive pain in the ass to implement.
Also there's no idea of 'cameras' in opengl, or any graphics API. you have matrices that you use to transform vertices, and a combination of a projection matrix and a view matrix is what makes up a camera in rasterization.
If i were to set up a camera and a thread for each pixel, its basically just using one camera for the whole screen + a burden of threads for your PC to handle.
"Cameras" are not threads. "Cameras" are simply just the translation of points from 3D world-space to 2D view-space. Threads are more-or-less parallel computing, simply stated. Kinda ridiculous to do such a method, right?
@@Kino-Imsureq cameras don't exist, unfortunately its not like unity/other game engines
@@leonardoasaro2826 yeah ik but im just showing a scenario where you somehow figured out how to define multiple cameras
Microsoft LunarG Vulkan!?
Disney It’s Show Yourself!
SoC energy!?
No wonder games like genshin impact have way better performance in vulkan tweak on android
I don't understand why OpenGL is using so much CPU power. It's just a tool used for writing stuff to the GPU. Since there is only one bus, using multiple cores should not make much of a difference either. What is it that im not understanding?
OpenGL is too abstract and doesn't really represent how modern hardware is working. For example, turning blending on or off can result in shaders getting recompiled on the fly because opengl doesn't expose the fact this needs to happen, it just gives you a blend on/off state, so as a programmer you see random unpredictable stutters coming from the GL driver because the API itself cannot give the driver enough information about how exactly resources are being used ahead of time.
Another issue is OGL is single threaded, modern GPUs are so fast it's a challenge to keep them 100% busy.
@@SerBallister Great response, thanks!
2022
This... Hmm idk...
w i d e
I wish From Software use Vulkan instead of DX12 feature level 12 in Elden Ring (Nvidia mesh shading I guess). Like it's genuinely can run 30fps 720p on integrated gpu Intel Iris XE, but god damn, it dont even start on my pc, what can run Dark Souls 3 on max settings, bruh......
Is Vulkan good or no?
@@ABDTalk1 its trash
@@Sand_1995No. If it is implemented correctly. It is way faster than OpenGL.
Single core vs multiple core
And here is how they performs on Android: ua-cam.com/video/Vujdk-NLJlw/v-deo.html
What exactly is being compared here? These are both APIs for the GPU. There's no actual implementation code for either of these programs. All the implementation of Vulkan and OpenGL functions are dependent on the GPU manufacturer.
Some people claim it's easier to make driver for Vulkan than the opengl.
Dude Vulkan is simklar to OpenGL 2.0 in FPS but same as 3.1 in fraohics
Either those readings were animated using the respective APIS or just over exaggerated. I'm not convinced
amd vulkan will be best
alguno de habla hispana? :v
Spend months & perhaps years,
of my brain energy to re-learn Vulkan,
from the familiar OpenGL,
to achieve ONLY an
Energy Saving of
15% ?????
nice screen tearing
Thing is though, OpenGL has been around since the late 90s while Vulkan is very new. So right now Vulkan is not really as stable as it can be, it just takes time to roll out.
opengl has changed immensely from the late 90s to now, notably with the api being completely reworked from 2005-2010, though it is a lot more matured. nvidia drivers have something like a million lines of code with edge-cases for opengl, though that's because opengl is fairly high level compared to even dx11 (which gives you more control about memory allocation), dx12 and vulkan. With vulkan though the implementation in the driver shouldn't need so many hacks and edge-cases, cause it's so low level that it's up to the graphics/game developer to do all the optimizations, buffer allocation, etc. by hand
Vulkan is an awesome API but very difficult to implement, we need some middleware.
no shitty middleware, thank you. It's not difficult, there is just much to do still, the tools are available and are being made with open source in mind. It will get easyer and easyer every day.
Middleware would defeat the purpose of Vulkan which is to be closer to the metal.
@@Mr_Spock512 So having something like a faster version of Unreal engine is not useful ?
im watching 144p theyre both the same
Did you not even watch the video? "There will be no visual differences"
very bad presentation. why? because it didn't say ES what? the version wasn't mentioned.
also when you are dealing with ES drivers get all fuzzy. you have to go with main opengl, and you have to use it right
Are you saying you want Vulkan to flop miserably and die because you think they made a very bad presentation? Cause it sounds like you are!
at the end of 2019 google is about to sell pixel 4 with OpenGL ES if Vulkan API is that good why industry giants still use OpenGL ES
In technology everything has to be backwards compatible. I mean, BluRays are great, but the player wouldn't be worth much, if it wouldn't also play the old DVDs and CDs.
@@DesertCookie In the case of apple its the opposite they just drop things suddenly. They transitioned to "Metal" like they performed a "magic sheet disappearing trick" in favor of getting rid of Nvidia compatibility I guess.
True. At least we have Vulkan on all operating systems now.
UA-cam knows I only like openGl
what the hell is this aspect ratio? please don't
Well Apple Today deprecate OpenGL ES ... So all we have now is metal and Vulkan,
Deprecated is not unsupported. OpenGL will still be massively used for years to come, as Vulkan should gradually mature and pervades CG devs.
To be fair OpenGL ES is kinda stupid
I'm doing embedded development so ES2 is the best I get. Talk about CPU bound.
Vulkan always crashed idk why
your GPU probably doesn't support it.
vulkan wins...clearer graphic (if you have good eyes), less power consumption, boost fps..next bring out the monopolizer money sucker micro$oftex's directxxx to compare with vulkan
opengl is pure garbage. lol
Vulkan is garbage on my pc
gtx1060 overclocked couldn't even beat rx470 reference in Doom Vulkan... shows how bad AMD potential is... kappa
arm bad
Graphics APIs have nothing to do with CPU,
That opengl bar is much bigger, therefore opengl is more powerful. Go home Vulkan, you are drunk.
True, OpenGL is more powerful towards the CPU, which is why _game developers don't always like it_
Vulkan uses the GPU more, where the GPU has hundreds (if not thousands) more cores than the CPU; it renders things a lot quicker; Vulkan fulfills the purpose of the GPU a lot more - to handle graphics calculations, not just color a bunch of pixels and paste them unto the screen.
I don't know with you; are you good with OpenGL, or are you just a random person commenting on these videos (intended for developers, especially beginners in this graphics area) ?