Kirill Dmitrenko

1.7K posts

Kirill Dmitrenko

Kirill Dmitrenko

@dmikis

Gfx SW at IMG Tech, ex Cinemersive Labs, ex Saber Interactive. ex Yandex Geo.

Edinburgh, UK Katılım Eylül 2009
344 Takip Edilen167 Takipçiler
Kirill Dmitrenko retweetledi
Nintendo Everything
Nintendo Everything@NinEverything·
To celebrate the release of Dungeons & Dragons Neverwinter Nights 2: Enhanced Edition on Nintendo Switch from @AspyrMedia, we have a couple of codes to give away. Repost and follow to enter. Ends July 18. Open to all regions, but we are giving out US codes.
Nintendo Everything tweet media
English
41
309
280
64.3K
Kirill Dmitrenko
Kirill Dmitrenko@dmikis·
@s1ddok That's an unfortunate turn:( If you don't mind, how long did it take to get an answer? I saw processing times in the UK and decided to now even try
English
1
0
0
78
Andrey Volodin
Andrey Volodin@s1ddok·
Canada rejected my visa, so I won’t be able to attend our SIGGRAPH booth in Vancouver this year. I'm pretty heartbroken, but I still encourage everyone to come and experience our demos firsthand!
English
1
0
15
1.1K
Andrey Volodin
Andrey Volodin@s1ddok·
modern GPUs being scalar is bit of different matter for my confusion. let's assume for a second that we still have one-instruction 4 component vector multiplication. then shouldn't all samples insist on multiplying vector from the left? otherwise it makes stuff very inefficient (additional shuffles are required) and almost every sample from every shader language by default contains matrix on the left and vector on the right
English
1
0
0
160
Andrey Volodin
Andrey Volodin@s1ddok·
I'm confused. All modern GPU APIs default to column major matrices, with a common wisdom of them being "faster bc SIMD". Presumably that means that it should be true if matrix/vertex multiplication can be expressed in 4 dot products, each working on 4-component vector. But then all API follows up with sample where vector is multiplied on the right, meaning that you first have to scatter elements from each column to form a row and then multiply. Am I missing something or it makes no sense? Shouldn't we all be multiplying vectors from the left?
English
3
0
8
1.7K
Kirill Dmitrenko
Kirill Dmitrenko@dmikis·
@s1ddok AFAIK, almost all current GPU architectures are scalar, so it doesn't matter. There's no "dot product" instruction that operates on four floats at once. There are specific "dot product" instructions for packed 16-bit or 8-bit values, though.
English
3
0
0
159
Kirill Dmitrenko
Kirill Dmitrenko@dmikis·
@SebAaltonen I think that's the answer to a different question :) Mine was about what you think about a possibility of WebGPU being the only GAPI used in the HypeHype.
English
0
0
0
115
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
@dmikis I had to add validation disable also to the WebGPU instance. Device wasn't enough.
English
1
0
0
433
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
WebGPU performance: WebGPU (Dawn native): 0.7 ms MoltenVK: 0.7 ms Metal: 0.6 ms 791 draw calls in 10 render passes. Our Metal 2.0 backend uses manual resource tracking, unmanaged command buffers, placement heaps and argument buffers. This is a very good result for WebGPU!
Sebastian Aaltonen tweet media
English
10
6
176
11.7K
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
CLARIFICATION: I am not intending to ship a graphics API. I am only writing mock code to show how much simpler it would be to write GPU code without a complex graphics API.
English
6
1
90
7.7K
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
I am again writing my "No graphics API" blog post. Wrote the first C/C++ example that creates a shader pipeline, texture, RT, buffer, does a dispatch with sampler, output texture, buffer and root data struct containing all of them. Total 84 lines. Much better than Vulkan :)
English
23
40
961
60.5K
Kirill Dmitrenko
Kirill Dmitrenko@dmikis·
@kenpex @maxliani @yotam_erel Blender runs CPython inside. You can write native addons for it. For example, we (and other people, AFAIK) have successfully run PyTorch within an add-on to the stock Blender.
English
0
0
0
67
c0de517e/AngeloPesce
c0de517e/AngeloPesce@kenpex·
@maxliani @yotam_erel And AFAIK you don't even really develop plugins for blender, it's either python or you patch the source? But I dunno how limiting it is, couldn't you patch blender & release the source of the interconnect you need, then use that to develop your tech privately?
English
2
0
0
501
c0de517e/AngeloPesce
c0de517e/AngeloPesce@kenpex·
Autodesk does not seem to be reacting much to the Blender phenomenon? Now, ofc I have no data about this, but it seems that Blender keeps growing - the moment it will be a clear danger for Maya it will be too late for Maya to steer. They probably need to do something radical now.
English
4
0
9
2.9K
Stefan Pijnacker
Stefan Pijnacker@StefanPijnacker·
Started working again on my renderer that uses DirectX Ray Tracing. Making good progress right now. Gonna do some more modern techniques soon together with supporting quality settings.
Stefan Pijnacker tweet media
English
1
5
30
1.4K
Kirill Dmitrenko
Kirill Dmitrenko@dmikis·
@SebAaltonen Shared pointers in Metal are hidden in the bowels of objective c runtime. There're still very much there.
English
1
0
1
331
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
Why is the C++ wrapper for Vulkan riddled with shared pointers. C++ wrapper for Metal seems much more clean.
English
7
1
17
4.3K
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
I just found out that there's a C++ wrapper for Vulkan when I was reading Flutter's Impeller source code. Of course there's some template magic there. Turns out that I can get underlying Vulkan handles with overloaded type cast operator. Obviously...
English
2
0
60
8.6K
Freya Holmér
Freya Holmér@FreyaHolmer·
ok I need a low down on vertex streams! is there a good resource to learn these things? some questions I have right now: 1. are streams a separate concept from the actual data layout, and are there performance reasons you would/wouldn't put each vertex attribute on a separate stream? the only thing I'm aware of here is that tiled renderers prefer having the position buffer in its own stream for better performance when doing,, one of the passes, I forgot the name of it 2. do meshes actually use an array of structs, or is it a struct of arrays, or, do you get to pick, and if so, what are the performance tradeoffs? 3. do index buffers prefer having referenced vertices close to each other in the vertex buffer, or does it not matter?
English
11
0
71
17.9K
Kirill Dmitrenko
Kirill Dmitrenko@dmikis·
@meuns D3D is supported via windows crate in manner similar to vulkan and ash.
English
1
0
0
83
Sylvain Meunier
Sylvain Meunier@meuns·
I'm interested using rust in some tiny graphics project but it seems the only usable/supported/mature API is vulkan. Maybe I need to use wgpu... 😩
English
5
0
2
1.5K
Kirill Dmitrenko
Kirill Dmitrenko@dmikis·
@pixnblox I'm waiting for my Delta flight to denver and this twit had me worried for a second that they've changed the gate 😅
English
0
0
0
28
Kirill Dmitrenko
Kirill Dmitrenko@dmikis·
I will be in Denver next week to attend @siggraph 2024. Feel free to get in touch if you're interested in talking about our work at @cinemersivelabs and graphics overall.
English
0
0
0
103