Questions tagged [performance]
The performance tag has no usage guidance.
75
questions
0
votes
0
answers
47
views
Most efficient way to calculate signed distance field (SDF) for pixel subsamples?
Looking how to utilize as much parallelization processing as possible for the following task:
A screen-sized texture is completely black except for blue pixels which are in close proximity to geometry ...
3
votes
0
answers
42
views
Profile GPU performance in Direct3D 11
I'm trying to profile a d3d11 application using queries (pretty much exactly as described here).
I noticed something strange with the data I was getting from the queries and I think I managed to ...
1
vote
3
answers
139
views
How does higher draw distance strain the CPU?
I am looking at many games like Dead Island 2, Red Dead Redemption 2, and Minecraft and I see that while the render distance grows, the CPU load grows with it. Why could this be happening? Lack of ...
0
votes
1
answer
31
views
Theoretical speedup from sample number in path tracing algorithm
Suppose, in a Kajiya style path tracing algorithm, I have 100x100 pixels, and I am using 32 samples per pixel. So, the total ...
3
votes
0
answers
54
views
Intel UHD extremely slow copy operations
Is there a way to make copy operations such as CopyResurce(d3d11) and glBlitFramebuffer(ogl) on multi-sample resources faster ...
1
vote
0
answers
104
views
GLSL : Extremely slow compilation when using loop
I am making multiple gradients with GLSL. However, when I started using a loop instead
of a lengthy else if condition, the compile time jumped from 2-4sec to 40sec !...
0
votes
1
answer
56
views
What technique can I use to swap thousands of models per frame?
I need to render a lot of objects that swap their model from frame to frame.
Currently, I am putting every model into a single vertex buffer and giving every vertex an id. I store the same id in the ...
1
vote
1
answer
288
views
How to do frustum culling with draw call bundling?
If I'm understanding things correctly (please correct me if I'm wrong):
All modern graphics APIs (vulkan, dx12, metal, webgpu) provide ways to bundle and replay draw calls. The bundle includes which ...
0
votes
1
answer
142
views
What are some tools to test performance of a Vulkan based game?
I am developing Vulkan games. It is still a basic rendering program with some cornel boxed data. Apart from testing hairs, calculating fps, what are some tools to apply to test the performance of such ...
0
votes
1
answer
204
views
Convert one triangle to another in matrix4x4?
The context openGL instances learning.
I want to transform a reference triangle to another one. So final goal is to have one triangle and the instance being a transformation of that initial triangle.
...
0
votes
0
answers
150
views
Good way of implementing an efficient tilemap renderer
I am new to graphics programming and I'm trying to create an efficient 2D tilemap renderer (using rust and wgpu (webgpu)).
My current implementation
My current implementation consists of:
A Rust-Vec (...
1
vote
2
answers
428
views
Performance impact/implications of constant buffers / uniform buffers
Constant buffers stay constant throughout entire dispatches / draw calls, and thus their data can presumably be shared as efficiently as possible between different threads using those buffers.
But I ...
2
votes
0
answers
155
views
Sparse voxel oct tree tracing, optimization tricks?
I have a working oct-ree raytracer and I am applying it to the sponza.
The algorithm I have designed works like this at a high level:
Collide with the bounding box of the model, move your ray to that ...
6
votes
1
answer
141
views
Can meshes be reused in raytracing?
In rasterization, at least in the context of game development, it is a common to have many instances of the same 3D object in a scene (think many identical rocks in different sizes/positions/rotations)...
2
votes
1
answer
52
views
Different Vertex structures in multi-purpose system
A typical definition of a Vertex structure in C++ might look something like this:
struct Vertex
{
Vec3 pos;
Vec3 color;
}
However, we found ourselves ...
0
votes
0
answers
34
views
Is there a Performance Penalty for LOD objects with different topology?
I have a fairly complex-shaped object I've modeled, and in creating the LOD meshes, I've merged some verts, deleted some and even added some after in cases where this manipulation produced an n-gon. ...
1
vote
1
answer
577
views
Embree: Performance issue when ray casting User Defined Geometry
I am working on the integration of Intel's Embree library into our home renderer to accelerate its rendering time. Our renderer supports various geometry types, such as quads, triangles, but also ...
2
votes
2
answers
514
views
What does the z-buffer look like in memory?
I am an amateur game developer, and I've been reading a lot on how computer graphics rendering works lately. I was reading on the Z-buffer recently and I can't quite seem to be able to wrap my head ...
0
votes
1
answer
90
views
is utilizing multiple GPUs better than using one for all software?
In cases of Laptops, some will have two GPUs. One is built-in (e.g. Intel) and another one attachable (e.g. Nvidia).
Is it better to have each of them operate different software to divide the load?
or
...
0
votes
0
answers
41
views
I am trying to find a clip about the art of old computer graphics
I have saw a clip where a guy talked about the art of squeezing some nice graphics into a very small space that was available on old computers. Come to think of it, it sounded something like today's ...
1
vote
1
answer
98
views
Is glDispatchCompute(a,b,c) any faster than glDispatchCompute(a*b*c,1,1)?
In my application, there is no inherent 2D or 3D structure to the computer shader instances. So having multiple dimensions doesn't benefit me semantically in any way. I am wondering, whether it still ...
3
votes
2
answers
6k
views
Optimizing compute shader with thread group shared memory
I'm currently learning compute shaders and I'm trying to write an optimized Game Of Life. I have a first version working that uses a Shader Storage Buffer Object. I dispatch a thread per cell I want ...
10
votes
1
answer
7k
views
Performance of Compute Shaders vs. Fragment Shaders for Deferred Rendering
I have written a deferred renderer that can use either a fragment shader or a compute shader to execute the shading pass. Unfortunately, the compute shader implementation runs slower. I'm trying to ...
4
votes
1
answer
573
views
Best practice for managing many shaders and merging multiple shaders into one?
I have managed to greatly minimize draw calls on my recent project, but as I'm adding more shaders, I see that I have to switch more times and that is causing a lot of draw calls. What is the best ...
1
vote
0
answers
35
views
How are 2D graphics rendered in HTML canvas
I was making some circles in the HTML Canvas element and the circles were so smooth. In a sense that you cant see any vertices.
I normally work in unity and I you make a shape in 3d you most of the ...
1
vote
0
answers
40
views
Optimizing texture fetches with higher mip levels
Let's say I have some shader program in DirectX or OpenGL rendering a full screen quad. And in a pixel/fragment shader I sample some huge textures at random texture coordinates. That is one same ...
1
vote
1
answer
150
views
Tessellation Speed in terms of interpolated points per second
For a research project, I have written a Tessellation Shader to interpolate solution points of a 3-Dimensional mathematical equation. Therefore I don't use any techniques for displacement, I merely ...
0
votes
0
answers
210
views
Software Rendering Display Latency
I've been doing some reading as to how to reduce input delay on modern computing devices. A lot of my understanding from this comes from the VR research paper by Carmack explaining the numerous ...
3
votes
1
answer
451
views
Compute shader textures compared 2D float4 arrays
I am wondering is there a difference in performance between using floating point textures as my 2D float4 array vs just passing in 2D float4 arrays?
2D float arrays eliminate the need to do texture ...
4
votes
2
answers
563
views
Should you measure mesh complexity in triangles or vertices?
I have seen people using either vertices or triangles as a quick heuristic to estimate mesh memory usage and mesh rendering time.
I always thought vertices were better, because the number of vertices ...
-1
votes
1
answer
88
views
Are MMORPGs, specifically WoW, limited by their latency in terms of FPS?
It sounds crazy, but I've been doing a lot of reading on exactly why WoW performs very poorly, even on a 1080Ti / 8700k OC'd and overall, a high-end machine.
Overclocking the CPU yielded great ...
6
votes
1
answer
2k
views
Why are tessellation shaders disliked?
I often hear that tessellation shaders aren't great for performance reasons. Something along the lines that if you try to use a tessellation shader, you'll find that the data you get out isn't ...
1
vote
0
answers
761
views
Is a smaller local-size/threadgroup-size better for compute shader performance?
A compute shader defines the number of threads it requires to be executed.
This number can be called "local size" or "threadgroup size" according to the API, and be factored into 3 separate dimensions ...
2
votes
0
answers
249
views
Using GPU instead of CPU in Scala
I wrote a program that displays points expressed in 3D in a 2D canvas, using perspective projection. The aim is to display a cube. Each face of the cube is drawn by linearly interpolating the points ...
4
votes
1
answer
2k
views
How does MSAA performance scale?
I'm finding myself increasingly interested in rendering techniques utilizing multisampling for anti-aliasing (obviously), out-of-order transparency, volumes etc.
Searching the web for performance ...
9
votes
2
answers
1k
views
The most performant way to organize vertex data on modern GPUs
Say I have a model made up of vertices, each with position, normal, tangent, and ...
3
votes
3
answers
228
views
Dealing with wasted space when using SIMD on CPU for vector maths
I've been getting interested in SIMD programming on CPU using SSE recently, but I'm a complete noob on the subject. I found this article describing how to make an efficient float3 type using the ...
1
vote
3
answers
125
views
How can an OpenGL visualization run for weeks?
For an art project, I need to make an OpenGL visualization run for at least 4 weeks. Is this possible? I can pretty much choose the rest of the hardware and software.
6
votes
0
answers
460
views
In Metal, what performance advantages are there, if any, to using vertex descriptors and the [[stage_in]] qualifier?
Metal seems to provide two very different ways to access vertex data in your vertex shader. You can:
Create an MTLVertexDescriptor object, which describes vertex ...
4
votes
1
answer
290
views
Tasks of a professional graphics programmer?
Currently I'm 16 and in high school and I love graphics programming and I'm seriously considering it as a career path. I was wondering what a day as a graphics programmer looks like for offline ...
1
vote
0
answers
160
views
Can I voxelize 3D set of points without reconstructing surface first?
I have huge point cloud data I want to render them at interactive frame frate. Process I know is
1.point cloud data
2.triangulate it using delnauy or other triangulation algo
3.surface ...
5
votes
1
answer
608
views
Performance impact during texture layer loading
Recently I have been having a rather confusing performance drop with loading in layers of a 2D texture array, but only in one case from what I can tell, leaving me to speculate on why it is happening ...
2
votes
1
answer
584
views
GPU not reaching 100% usage when frame rate is dropping
I am making an iOS game using Unity. I am testing some shaders that I have made for the game, and in some cases the device will run at under 30 FPS but not have 100% device utilization.
Sometimes a ...
0
votes
2
answers
574
views
Challenges of Offline Rendering
What are some of the challenges of Offline Rendering? I know one problem that is faced is performance and rendering times, are there any more issues?
Path Traced photos seem to have reached the ...
3
votes
1
answer
794
views
Can I use QueryPerformanceCounter to measure single draw or compute call performance?
I know I can use QueryPerformanceCounter for measure time for whole single frame. But can I when it comes to OpenGL draw or compute call?
I always assumed that, as ...
4
votes
1
answer
1k
views
Register pressure in Compute Shader
I'm in the process of writing a Ray Tracer using DirectCompute / HLSL. First, eye rays are generated (one per pixel). Then, rays are traced, shaded and reflected in a loop. Also, shadow rays for each ...
6
votes
2
answers
534
views
How can I improve the performance of my custom Global Illumination approach?
I want to experiment with some new stuff about modern rendering techniques and in that way I'm trying to implement a custom GI (somewhere between pathtracing and instant radiosity).
My scene is a bit ...
5
votes
1
answer
397
views
Optimizing performance on hardware
I'm working on a webgl audio visualizer that uses particles, and I want to optimize rendering based on the user's hardware. I'd like to offer a "low quality" and "high quality" setting so that it ...
3
votes
1
answer
793
views
How to get unique nearest neighbour?
There's already something called K-nearest neighbour algorithm with gives nearest neighbour to points. But what I want is unique neighbour which is not shared by any other neighbour.
I've implemented ...
1
vote
0
answers
552
views
Billboards or impostors when objects' instances are re-scaled [closed]
Billboarding/impostors mean, roughly, representing complex 3D objects in 2D or with simple quadrilaterals, for the sake of LOD systems.
Consider the case of rendering a very numerous asteroid field ...