Attila Project

From AttilaWiki

(Redirected from Main Page)
Jump to: navigation, search

The Attila Project goal is to research and develop high performance microarchitectures for the next generation of GPUs. To this end, the team has started by exploring the performance of the current generation (R580, G70, G80) of rasterization-based GPUs. So far we've produced a full GPU (soft) stack: an OpenGL driver, an Attila driver, and a cycle-accurate simulator of the first incarnation of the Attila architecture. Additionally, the team has produced helper tools to capture open GL traces, play the captured traces and a WaveForm visualizer for the Attila simulator.

We are currently working on a DX9 driver, which will share many components with the OpenGL driver. To this end, we're layering the existing OGL driver into a lower common layer that will support both the DX9 and OGL specific layers.

Take me to the Snapshots!

The Attila stack can run a number of OpenGL games on top of the Attila Simulator. We dump the contents of the frame buffer produced by the Attila GPU at the end of each frame and turn them into short videos. The Snapshots are here.

Current Research Topics

Victor Moya is looking for a reason to start writing his PhD dissertation after 'wasting' a couple of years working on certain 'uninteresting' project at Intel. He has been lately helping Albert and Vicente to fix bugs in the new drivers, add or fix support for new features in the ATTILA architecture required to support D3D9 based games, implementing the ATTILA functional emulator to improve driver development time and other miscellaneous stuff that doesn't improve his chances of finishing a PhD. Eventually he may take another look at the general shader architecture with the purpose of filling pages in the PhD dissertation.

Carlos González has developed a detailed GDDR4 memory controller based on specs of Hynix and Micron modules. Carlos is currently looking into scheduling techniques to improve bandwidth and latency of current GPU memory controllers.

Jordi Roca has started looking into rendering micro-polygons with a classic rasterization engine and what changes would be needed to better support micro-polygons in a commercial GPU.

Albert Murciego is developing our new D3D9 driver based on the ATTILA common library layer(ACD). He has implemented support for Crysis and Call of Duty 2. He will be improving our D3D9 driver to add more D3D9 games.

Vicente Escandell is developing the ATTILA common driver layer (ACD) and the new OGL driver based on it. The new OGL driver supports Doom3, Quake4 and Prey but support for UT2004 was deprecated (due to being fixed function based, not shader based and already quite old) and Chronicles of Riddick has not been tested. Both should work with the old OGL driver until it breaks down due to lack of support :). He has implemented support for Enemy Territories: Quake Wars in the new OGL driver. Right now he is looking for new OGL games or applications (good luck on that :P) and the viability of implementing glslang support in our OGL driver.

Chema Solís implemented our early version of the D3D9 driver that was able to run Half Life 2 traces. Our new D3D9 driver based on the common driver layer (ACD) has been using some of the early D3D9 infrastructure he developed (D3D9 PIX trace player, D3D9 interface classes, shader translator).

Recent News

Subscribe to attilasim@yahoogroups.com for up to date news on attila by sending an email to attilasim-subscribe@yahoogroups.com

  • 2010.01.14 We decided to release the full source code for the ATTILA open source version (released three years ago). This includes the source code for the ATTILA OpenGL library and OpenGL trace capturing tools in their 2007 incarnation. You can get the archive with the whole packet from the Downloads section.


  • 2010.01.14 Take your pick (updated)
Crysis
Crysis
COD 2
COD 2
UT3
UT3
GRID
GRID
L4D
L4D
Wolfenstein
Wolfenstein
Mirror's Edge
Mirror's Edge
Crysis Warhead
Crysis Warhead
Need For Speed Underground
Need For Speed Underground
Burnout
Burnout
S.T.A.L.K.E.R.
S.T.A.L.K.E.R.
  • 2009.12.06 UT3 working
Image obtained with the Attila emulator
Image obtained with the Attila emulator


  • 2009.11.16 OpenGL isn't dead yet, though it may be soon :(. Few new games using it and we don't have a good solution for glslang. You can thank Vicente for this shot.
Finally! A new OpenGL game working and using our new OpenGL implementation!  Megatextures for ATTILA!!!
Finally! A new OpenGL game working and using our new OpenGL implementation! Megatextures for ATTILA!!!

The D3D9 library is also progressing. One shot from Call of Duty 2.

Expect more soon.
Expect more soon.
  • 2009.10.08 Current Crysis state with the new Direct3D driver:
Diving from the sky
Diving from the sky
  • 2009.09.14 Coming soon ...
Crysis with the new Direct3D driver (not the final render)
Crysis with the new Direct3D driver (not the final render)
  • 2008.04.25 D3DDriver works much better because Victor Moya fixed an important bug in the GPU simulator driver. See the D3DDriver evolution page.
 HL2: Lost Coast rendered by Direct3D.
HL2: Lost Coast rendered by Direct3D.
 HL2: Lost Coast on Attila, 2008.04.25.
HL2: Lost Coast on Attila, 2008.04.25.
  • 2008.02.06 Due to the recent intruder detection, the Attila Wiki Site account creation and edit permissions have been restricted. Now, only sysops can create new accounts, and only such logged/registered users can edit or create new pages. If you want to collaborate adding new GPU related information to the Attila Project, please e-mail any of the Team members to get your account and edit rights. We look forward to any valuable contribution.
  • 2008.02.04 Christian posted his Master Thesis (in spanish) on Color Compression in the Publications section
  • 2008.01.30 Chema added texture filtering to the DX9 driver as well as Z and Stencil test support. See full details in the D3DDriver evolution page.
  • 2007.12.07 Chema extended the DX9 driver to read correctly all texture formats, including DXT*. Cube and Volume Textures supported also. See full details in the D3DDriver evolution page.
  • 2007.12.05 DX9 news: Some 2D Textures supported, memory layout is the expected by gpu now. Pixel Shading working and Alpha blending is now ready. See full details in the D3DDriver evolution page.
  • 2007.11.29 DX9 news: Vertex Shading stage working, so geometry is projected correctly. Some 2D textures supported, but memory layout is not the same that gpu expects. See full details in the D3DDriver evolution page.


  • 2007.05.30. Web Site opens!
Personal tools