Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Idea: cache trajectory agent info in gpu buffers #439

Open
toloudis opened this issue Jan 7, 2025 · 0 comments
Open

Idea: cache trajectory agent info in gpu buffers #439

toloudis opened this issue Jan 7, 2025 · 0 comments

Comments

@toloudis
Copy link
Contributor

toloudis commented Jan 7, 2025

Use Case

Can we get performance gains from keeping trajectory data in gpu memory?

Acceptance Criteria

This idea needs more vetting. Acceptance is a decision on whether it's worth it to pursue a full implementation, delay till later, or abandon.

Details

Suppose a whole frame of agent data were stored in a gpu buffer. Could we use indirect or instanced rendering to index into the buffer to get agent info for rendering?
Could we store multiple frames of the trajectory in the same buffer? Would we need a separate buffer per frame? (Synchronization: Could you write to one section of the buffer while rendering is reading from another section?)
What data would we want in the buffer for shaders to be able to use it for anything useful?
This would have to be reconciled with the big loop in updateScene...

Complications: the way we do instanced tube rendering for fiber curves, the way we do PDB rendering with LoD. GPU-side caching could be most effective for simple sphere instanced agents. For sphere-only trajectories, gpu side caching would be extremely efficient for renders.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

No branches or pull requests

1 participant