profile
viewpoint
Richard Diamond DiamondLovesYou Vitality Studios Lawrence, KS. richardcdiamond.com

DiamondLovesYou/libressl-pnacl-sys 4

LibreSSL, built with Rust's Cargo, for PNaCl.

DiamondLovesYou/indexed_vec 2

`IndexVec` from `librustc_data_structures`

DiamondLovesYou/cargo-pnacl-helper 1

Helper functions for build.rs that need to compile a bit of C/CXX codes.

DiamondLovesYou/llvm 1

Fork of Rust's LLVM for PNaCl

DiamondLovesYou/android-rs-glue 0

Glue between Rust and Android

DiamondLovesYou/angular2-localstorage 0

Angular2 decorator to save and restore variables/class properties to HTML5 LocalStorage automatically.

DiamondLovesYou/binaryen 0

Compiler infrastructure and toolchain library for WebAssembly, in C++

DiamondLovesYou/boss_db 0

BossDB: a sharded, caching, pooling, evented ORM for Erlang

DiamondLovesYou/capnpc-rust 0

Cap'n Proto code generation for Rust

DiamondLovesYou/cargo 0

The Rust package manager

push eventgeobacter-rs/rust

Richard Diamond

commit sha 0134973fc67743c872a27fe963fc399abb861c25

WIP no frills SPIR-V support.

view details

Richard Diamond

commit sha ef02b8690e41d6962747bbd850c95e5891735402

Atomic fences with target machine/OS defined scopes

view details

push time in 14 hours

push eventgeobacter-rs/rust

Richard Diamond

commit sha ffd1217c9c46d8be60ab6632ccbc256bf37ba2f5

`amdgcn_dispatch_ptr` returns a pointer in the constant address space which isn't encodable in Rust's type system.

view details

push time in 14 hours

push eventgeobacter-rs/rust

Richard Diamond

commit sha ed7dacf547a1669ee4b5d8615bf43f0b5b0523c3

Make `librustc_codegen_llvm` aware of LLVM address spaces. In order to not require overloading functions based on their argument's address space (among other things), we require the presence of a "flat" (ie an address space which is shared with every other address space) address space. This isn't exposed in any way to Rust code. This just makes Rust compatible with LLVM target machines which, for example, place allocas in a different address space. `amdgcn-amd-amdhsa-amdgiz` is a specific example, which places allocas in address space 5 or the private (at the work item level) address space. Support Harvard architectures. LLVM value address space optimizations: leave values in their original address space where possible.

view details

Richard Diamond

commit sha 9237bd51745da2937bfbf176417f20e7777d13fd

Add a `#[address_space = "..."]` codegen attribute, specifying the address space kind in which to place the static variable.

view details

push time in 14 hours

push eventgeobacter-rs/rust

Richard Diamond

commit sha 2f3d7b070e4cca288e6ecdadf10c28342767c8da

Create metadata for the LLVM -> spirv translator. Also a few AMDGPU specific things.

view details

push time in 14 hours

startedHazyResearch/epoxy

started time in 16 hours

push eventgeobacter-rs/rust

Richard Diamond

commit sha 0134973fc67743c872a27fe963fc399abb861c25

WIP no frills SPIR-V support.

view details

push time in 21 days

startedHewlettPackard/LinuxKI

started time in a month

issue commentDiamondLovesYou/rust-vpx

vp9 encoder returns null packets

Sorry, not a clue. You should probably ask vpx project directly. This project is mostly just a FFI for Rust.

githubquestions

comment created time in a month

startedwwmm/pulseeffects

started time in a month

startedjaakkopasanen/AutoEq

started time in a month

pull request commentvulkano-rs/vulkano

Support a number of SPIR-V capability related features.

Fixed.

DiamondLovesYou

comment created time in a month

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha 20eca883e679a3e85d9790d29f2e44e647aa906d

Support a number of SPIRV capability related features.

view details

push time in a month

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha 2d543481c2965632560dfb84868191b29a52f07b

Support a number of SPIRV capability related features.

view details

push time in a month

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha 88a5515d14ab5a1f4345b1f17eeb6621549475f5

Support a number of SPIRV capability related features.

view details

push time in a month

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha 57c545d7aba653a4dc99648a5a8892bbb538b539

Add support for the Physical Storage Buffer Access feature. (#1359) This feature was recently promoted from an extension to the core spec in Vulkan 1.2. It is already supported on many recent drivers: NVidia, Mesa RADV, and AMDVLK. Other than supporting enabling the feature and the basic buffer address query, I made no attempt to create safe interfaces for its use. Such will come later, after I've experimented with its use in Geobacter.

view details

Austin Johnson

commit sha 4e3d38ac5b0bfb861a35355c99ca9e58e790d087

update half & metal; fix couple of warnings; add missing changelog entries (#1364)

view details

Austin Johnson

commit sha 536ac5303bf30f2ef110445104e384a5e67339b0

add additional ImageUsage constructors (#1372)

view details

Austin Johnson

commit sha a4591a20cf1aa9b178b88f44e88ade1ef26806b4

update examples to use ImageUsage::color_attachment instead of caps.supported_usage_flags (#1373) * add additional ImageUsage constructors * update examples to use ImageUsage::color_attachment instead of caps.supported_usage_flags * fix additional usage in multi-window example * update ignore to not include mandelbrot.png and triangle.png * update ignore to not include mandelbrot.png and triangle.png

view details

Rua

commit sha 1f27ab3ea9d8a8a99e4c37b69c8e60d68e05f8b4

AutoCommandBufferBuilder takes &mut self instead of self (#1376) * AutoCommandBufferBuilder takes &mut self instead of self * Changelog message

view details

Austin Johnson

commit sha eee101bc4db5a3456c7330f74eb924f8ecee88d4

publish 0.18.1 && vk-sys 0.5.2 (#1374)

view details

Rua

commit sha e4e324d632397579dc1381d9170876ed8b2134be

Add properties method to Format (#1379) * Add properties method to Format * Documentation * Changelog

view details

Trangar

commit sha 737016c047d79790088b27084b4364497e905da5

Ran rustfmt and added rustfmt checkbox to pull req template (#1367) * Ran rustfmt, updated PULL_REQUEST_TEMPLATE.md and added a rustfmt check to CI * Disabled the travis rustfmt check

view details

Richard Diamond

commit sha ea92fe9b74bf7d2fcf6bd84d548cab63c5d330b7

Support a number of SPIRV capability related features.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha ed7dacf547a1669ee4b5d8615bf43f0b5b0523c3

Make `librustc_codegen_llvm` aware of LLVM address spaces. In order to not require overloading functions based on their argument's address space (among other things), we require the presence of a "flat" (ie an address space which is shared with every other address space) address space. This isn't exposed in any way to Rust code. This just makes Rust compatible with LLVM target machines which, for example, place allocas in a different address space. `amdgcn-amd-amdhsa-amdgiz` is a specific example, which places allocas in address space 5 or the private (at the work item level) address space. Support Harvard architectures. LLVM value address space optimizations: leave values in their original address space where possible.

view details

Richard Diamond

commit sha 586add8f929b4a228c7805346c6a29c7ff2b9651

`amdgcn_dispatch_ptr` returns a pointer in the constant address space which isn't encodable in Rust's type system.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha ed7dacf547a1669ee4b5d8615bf43f0b5b0523c3

Make `librustc_codegen_llvm` aware of LLVM address spaces. In order to not require overloading functions based on their argument's address space (among other things), we require the presence of a "flat" (ie an address space which is shared with every other address space) address space. This isn't exposed in any way to Rust code. This just makes Rust compatible with LLVM target machines which, for example, place allocas in a different address space. `amdgcn-amd-amdhsa-amdgiz` is a specific example, which places allocas in address space 5 or the private (at the work item level) address space. Support Harvard architectures. LLVM value address space optimizations: leave values in their original address space where possible.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha b7a667496c0c6fc039d7c84d2050b323cd9dc1a2

Create metadata for the LLVM -> spirv translator. Also a few AMDGPU specific things.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 3b0620d9314ed93bae500fb4e1d1626694e520db

`amdgcn_dispatch_ptr` returns a pointer in the constant address space which isn't encodable in Rust's type system.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha bc0f2926af34ae63fc76bad29dc8b1c05e1f3f13

`amdgcn_dispatch_ptr` returns a pointer in the constant address space which isn't encodable in Rust's type system.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 88aaeef781f8eee5a806b353e20bb70dd615f01b

`amdgcn_dispatch_ptr` returns a pointer in the constant address space which isn't encodable in Rust's type system.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 34c8612571fb8b2252be87aa3116ba2184b6d4b6

Make `librustc_codegen_llvm` aware of LLVM address spaces. In order to not require overloading functions based on their argument's address space (among other things), we require the presence of a "flat" (ie an address space which is shared with every other address space) address space. This isn't exposed in any way to Rust code. This just makes Rust compatible with LLVM target machines which, for example, place allocas in a different address space. `amdgcn-amd-amdhsa-amdgiz` is a specific example, which places allocas in address space 5 or the private (at the work item level) address space. Support Harvard architectures. LLVM value address space optimizations: leave values in their original address space where possible.

view details

Richard Diamond

commit sha 305cb62c8acf2dda81cd49849deb221ef90aea4f

`amdgcn_dispatch_ptr` returns a pointer in the constant address space which isn't encodable in Rust's type system.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 34c8612571fb8b2252be87aa3116ba2184b6d4b6

Make `librustc_codegen_llvm` aware of LLVM address spaces. In order to not require overloading functions based on their argument's address space (among other things), we require the presence of a "flat" (ie an address space which is shared with every other address space) address space. This isn't exposed in any way to Rust code. This just makes Rust compatible with LLVM target machines which, for example, place allocas in a different address space. `amdgcn-amd-amdhsa-amdgiz` is a specific example, which places allocas in address space 5 or the private (at the work item level) address space. Support Harvard architectures. LLVM value address space optimizations: leave values in their original address space where possible.

view details

Richard Diamond

commit sha 53f515d927500665711371ba3da382f11c36e9a8

Add a `#[address_space = "..."]` codegen attribute, specifying the address space kind in which to place the static variable.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 104dca8129080584362bcf36c5e12eb5b44a23d3

WIP no frills SPIR-V support.

view details

Richard Diamond

commit sha 158e1b15c289c6479a565d081ed4f8676c035020

Atomic fences with target machine/OS defined scopes

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 8452e6c2647e8d740d1d93976d67f829ea4d4690

Create metadata for the LLVM -> spirv translator. Also a few AMDGPU specific things.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 34c8612571fb8b2252be87aa3116ba2184b6d4b6

Make `librustc_codegen_llvm` aware of LLVM address spaces. In order to not require overloading functions based on their argument's address space (among other things), we require the presence of a "flat" (ie an address space which is shared with every other address space) address space. This isn't exposed in any way to Rust code. This just makes Rust compatible with LLVM target machines which, for example, place allocas in a different address space. `amdgcn-amd-amdhsa-amdgiz` is a specific example, which places allocas in address space 5 or the private (at the work item level) address space. Support Harvard architectures. LLVM value address space optimizations: leave values in their original address space where possible.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 3bd7c0102443b2a521dddef2b670289403479313

Add the `spirv` and `spirv64` arch C ABIs.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 104dca8129080584362bcf36c5e12eb5b44a23d3

WIP no frills SPIR-V support.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha bb54505eb8f5638a868da0b079d5e9ff420b8467

Add the SPIRV LLVM target.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 1a35ffc375e55a0be68e9d3c77dd3d21c837c98e

Add the SPIRV LLVM target.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha bed80ecf294219a9360e303cff614df198862445

WIP no frills SPIR-V support.

view details

Richard Diamond

commit sha 2f705f30284ae3c701395b3a7e1159d596524e72

Atomic fences with target machine/OS defined scopes

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha bed80ecf294219a9360e303cff614df198862445

WIP no frills SPIR-V support.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha b9965260936fba6d0906fbe3e4e87ef30e8b1439

WIP no frills SPIR-V support.

view details

Richard Diamond

commit sha 73fee878de905fdeb924de396f83261f2ba1e615

Atomic fences with target machine/OS defined scopes

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha b9965260936fba6d0906fbe3e4e87ef30e8b1439

WIP no frills SPIR-V support.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha d86141220225b13deafb9375adaba17fac465d59

WIP Geobacter in Rust.

view details

Richard Diamond

commit sha 73ced9c403a1340cafb5c0255e1426c33b81b3d3

WIP no frills SPIR-V support.

view details

Richard Diamond

commit sha be666eefbd9049ff8b91bfbd8a2d9542bb497dd6

Atomic fences with target machine/OS defined scopes

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha d86141220225b13deafb9375adaba17fac465d59

WIP Geobacter in Rust.

view details

Richard Diamond

commit sha 73ced9c403a1340cafb5c0255e1426c33b81b3d3

WIP no frills SPIR-V support.

view details

push time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 525a103533fef8506ea97a880261aac49f9b4c30

Don't emit structure padding members if no padding is required. Previously, we would include an array in between every structure member + another before the first member. The vast majority of the time these array types would be zero sized, and would serve no purpose to LLVM, as we already ensure proper member alignment. This change *might* be faster, due to fewer structure members, but I didn't bench. (Zero length arrays are disallowed in SPIR-V. Avoiding them here is slightly easier than trying to patch things up on the LLVM side.)

view details

Richard Diamond

commit sha c6530029fed88b0c30f9669b8fe24b7af3215601

Slight optimization: avoid an allocation for empty structs.

view details

push time in a month

create barnchgeobacter-rs/rust

branch : no-zero-sized-array-padding

created branch time in a month

push eventgeobacter-rs/rust

Richard Diamond

commit sha 9d9a29e9d2226affca6ec04867cd75366ad32348

Create metadata for the LLVM -> spirv translator. Also a few AMDGPU specific things.

view details

push time in a month

push eventDiamondLovesYou/rust

Richard Diamond

commit sha 3f65f50efb60e162f28c107f680b6dd2c5911cb8

Slight optimization: avoid an allocation for empty structs.

view details

push time in a month

pull request commentrust-lang/rust

Don't emit structure padding members if no padding is required.

Cool! :smile:

Not sure about deep-vector-opt.. It's not like there's a lot of LLVM types/layouts to be created (at least not directly by the test), so prima facie this patch shouldn't boost speeds on that test anyway. Odd that it would regress (maybe the win is only after a certain crate size threshold?).

I've got one last slight optimization (tests..), then this should be ready. Now the padded field count (really, the upper bound) is precomputed along with the padded indices themselves.

DiamondLovesYou

comment created time in a month

push eventDiamondLovesYou/rust

Richard Diamond

commit sha 14656add8cbd907f328f25716a3137c07d9a6bfc

Don't emit structure padding members if no padding is required. Previously, we would include an array in between every structure member + another before the first member. The vast majority of the time these array types would be zero sized, and would serve no purpose to LLVM, as we already ensure proper member alignment. This change *might* be faster, due to fewer structure members, but I didn't bench. (Zero length arrays are disallowed in SPIR-V. Avoiding them here is slightly easier than trying to patch things up on the LLVM side.)

view details

push time in a month

Pull request review commentrust-lang/rust

Don't emit structure padding members if no padding is required.

 pub enum FieldsShape {         // FIXME(eddyb) build a better abstraction for permutations, if possible.         // FIXME(camlorn) also consider small vector  optimization here.         memory_index: Vec<u32>,++        /// Map source order indices to memory indices which include+        /// required implicit padding, eg due to alignment.+        /// If None, then this is the identity.+        padded_indices: Option<Vec<u32>>,

I considered something like that, but I felt that a proper fix would be creating a proper Bijection collection/map in librustc_data_structures (which I thought a bit about doing, but I didn't want to that refactor in this PR, sooo), and I didn't want to introduce a new structure (Permutation as you say) which would just get dumpstered Shortly(TM).

I'll admit maybe I should have not used padded_indices directly elsewhere (struct_llfields).. I've fixed locally (and made it a bit more efficient by storing the count), waiting on the tests.

We could also use this for memory_index above in a follow-up PR to resolve the FIXME and save a few heap allocations.

Actually, I would say a higher priority should be a proper bijection data structure. I've given this some thought and I think it's totally possible to support iterating both directions (forward and inverse) with just a single Vec, but I'm not sure I want to set aside more of my free time to implement it and fix librustc_middle::ty::layout to then use it (life of a hobbyist :frowning_face:). Nevertheless, with such a structure, memory_index would just be the permutation of the bijection map, and thus could be deleted in favor of the map.

DiamondLovesYou

comment created time in a month

PR opened rust-lang/rust

Don't emit structure padding members if no padding is required.

Previously, we would include an array in between every structure member + another before the first member. The vast majority of the time these array types would be zero sized, and would serve no purpose to LLVM, as we already ensure proper member alignment.

This change might be faster, due to fewer structure members, but I didn't bench.

(Zero length arrays are disallowed in SPIR-V. Avoiding them here is slightly easier than trying to patch things up on the LLVM side.)

+282 -34

0 comment

7 changed files

pr created time in a month

push eventDiamondLovesYou/rust

Richard Diamond

commit sha d41a428c28acd7201b71374e281f50e22c9d8740

Don't emit structure padding members if no padding is required. Previously, we would include an array in between every structure member + another before the first member. The vast majority of the time these array types would be zero sized, and would serve no purpose to LLVM, as we already ensure proper member alignment. This change *might* be faster, due to fewer structure members, but I didn't bench. (Zero length arrays are disallowed in SPIR-V. Avoiding them here is slightly easier than trying to patch things up on the LLVM side.)

view details

push time in a month

create barnchDiamondLovesYou/rust

branch : no-zero-sized-array-padding

created branch time in a month

push eventDiamondLovesYou/rust

Richard Diamond

commit sha deba186de559e44eb6f717defc23b9883256601c

Don't emit structure padding members if no padding is required. Previously, we would include an array in between every structure member + another before the first member. The vast majority of the time these array types would be zero sized, and would serve no purpose to LLVM, as we already ensure proper member alignment. (Zero length arrays are disallowed in SPIR-V. Avoiding them here is slightly easier than trying to patch things up on the LLVM side.)

view details

push time in a month

push eventDiamondLovesYou/rust

Richard Diamond

commit sha 31effffa06b5a732d30268a7e469bb4b5c640577

Don't emit structure padding members if no padding is required. Previously, we would include an array in between every structure member + another before the first member. The vast majority of the time these array types would be zero sized, and would serve no purpose to LLVM, as we already ensure proper member alignment. (Zero sized arrays are disallowed in SPIR-V. Avoiding them here is much easier than trying to patch things up in IR.)

view details

push time in a month

push eventDiamondLovesYou/rust

Richard Diamond

commit sha 5ea8081befe48299c4c70bd08dbd18a50c0d35d3

Don't emit structure padding members if no padding is required. Previously, we would include an array in between every structure member + another before the first member. The vast majority of the time these array types would be zero sized, and would serve no purpose to LLVM, as we already ensure proper member alignment. (This was written because zero sized arrays are disallowed in SPIR-V.)

view details

push time in a month

push eventDiamondLovesYou/rust

Richard Diamond

commit sha f361a6b32e1c4433dc6263656eff35d357a9cafc

Don't emit structure padding members if no padding is required. Previously, we would include an array in between every structure member + another before the first member. The vast majority of the time these array types would be zero sized, and would serve no purpose to LLVM, as we already ensure proper member alignment. (This was written because zero sized arrays are disallowed in SPIR-V.)

view details

push time in a month

startedadvancedresearch/poi

started time in 2 months

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha f7f962b9c5fd0f683d575c1e1da18c2d19e07cad

Support a number of SPIRV capability related features.

view details

push time in 2 months

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha 706db0aa725d77bd9e4aa88b3e4a330fda042a29

Support a number of SPIRV capability related features.

view details

push time in 2 months

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha e547fc025362d8d96f6ba6c159f9b562acef23ab

Support a number of SPIRV capability related features.

view details

push time in 2 months

create barnchgeobacter-rs/vulkano

branch : more-spirv-features

created branch time in 2 months

pull request commentvulkano-rs/vulkano

Add support for the Physical Storage Buffer Access feature.

@AustinJ235 Rebased.

DiamondLovesYou

comment created time in 2 months

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha 15b4a955f7dcbecbb9ea9b0de0432e873ccab5fe

Fix an `abort()` in the tests. (#1358) Not sure how widespread this issue is, I'm on Mesa 20.0 currently. I've re-enabled a heap size check only when the reported size is != 0, because MoltenVK apparently has an issue with the reported heap sizes.

view details

Trangar

commit sha df493136cf039494106e3fc1afb1402bdcc31370

Added a .boxed() function to GpuFuture to reduce boilerplate code (#1362)

view details

one-bit

commit sha c96309e55e22e034bd288c360e2dc896e6445dbb

Fixed warnings (#1363) * Fixed all warnings as of Rust 1.43.1 * Update CHANGELOG_VULKANO.md - Fixed all warnings as of Rust 1.43.1

view details

Sam Smith

commit sha 68cc93932dab23acc45cf4c87ee42318fac07323

Added more detailed explenation to docs (#1361) * Change documentation. Changed the documentation to explain how the data layout of an image is changed as it is copied from image to buffer. * Fixed the trailing whitespace

view details

Richard Diamond

commit sha 4b417eb9d97c364fcbfeb2e2db71d860f58deb8c

Add support for the Physical Storage Buffer Access feature. This feature was recently promoted from an extension to the core spec in Vulkan 1.2. It is already supported on many recent drivers: NVidia, Mesa RADV, and AMDVLK. Other than supporting enabling the feature and the basic buffer address query, I made no attempt to create safe interfaces for its use. Such will come later, after I've experimented with its use in Geobacter.

view details

push time in 2 months

pull request commentvulkano-rs/vulkano

Fix an `abort()` in the tests.

Should this be enabled for all drivers except for MoltenVK? This original change to disable this check was made in this pull request: #301 part of enabling support for molkenvk. The issue first arised here: #301 (comment). It seems that molkenvk then returned 0 for the current heap size instead of anything meaningful.

Maybe we could remove the specific radv check in favor of something that just checks to make sure the heap size is anything but zero before comparing. Also since this issue was from in 2017, when they had intentions of implementing this in molkenvk, this may have been done since.

Sounds fine to me.

DiamondLovesYou

comment created time in 2 months

push eventgeobacter-rs/vulkano

Richard Diamond

commit sha 0cfcf61e20fedc1dea80bb6e66b3e5eaa8a77173

Fix an `abort()` in the tests. Not sure how widespread this issue is, I'm on Mesa 20.0 currently. I've re-enabled a heap size check only when the reported size is != 0, because MoltenVK apparently has an issue with the reported heap sizes.

view details

push time in 2 months

PR opened vulkano-rs/vulkano

Add support for the Physical Storage Buffer Access feature.

This feature was recently promoted from an extension to the core spec in Vulkan 1.2. It is already supported on many recent drivers: NVidia, Mesa RADV, and AMDVLK.

Other than supporting enabling the feature and the basic buffer address query, I made no attempt to create safe interfaces for its use. Such will come later, after I've experimented with its use in Geobacter.

Note: this PR includes another commit which has its own PR; I will rebase once that other PR is accepted.

+574 -161

0 comment

8 changed files

pr created time in 2 months

push eventgeobacter-rs/vulkano

Lucas Kent

commit sha 1d83993e844e84792737f6e0c2a3819e3912e844

Update crossbeam version (#1139)

view details

Lucas Kent

commit sha 096bb3caf3b3d8f14177e4802c8df27105c97a5e

Remove deprecated constants from vk-sys (#1144)

view details

Lucas Kent

commit sha 5d7e7ace6261002fdbf41109bb953c0a60c481ea

Run CI on windows (#1148)

view details

Lucas Kent

commit sha 5233221ad908bfffbd9379da025e8cb62c9a84ea

Revert adding windows to CI, its not ready yet (#1149)

view details

Lucas Kent

commit sha 5b7a0c6466b4585fca48dbac593080ed6102dca0

Fix python installation docs (#1153)

view details

Lucas Kent

commit sha a3d503a5e5d256cf10be8c1701b8bfa3bed3efc4

Update example deps (#1155)

view details

Jakub Hlusička

commit sha 5893dad066d599d8fc71806e0e7dd744e37e64fc

Make `BufferUsage` derive `PartialEq` and `Eq` (#1164)

view details

mitchmindtree

commit sha d3888242ffba0aea1c7bebfbb0cd8465401a9bd9

Fix compiler error in code generated for GLSL struct (#1166)

view details

CephalonRho

commit sha 912abdf40f58123d618bb187159da3f70cd7e3fe

Make buffer::sys::UnsafeBuffer::new panic if the usage parameter is empty (#1161)

view details

hikitrbogithub

commit sha dba468f38a5c7212130313af58c2f06b22b1a189

Hash for Format (#1170) Added derive Hash for Format

view details

Lucas Kent

commit sha 3cb356e08922e8d1d599de7c264b46f10c1e4508

Add .gitattributes to automatically resolve merge conflicts on changelogs (#1176)

view details

Lucas Kent

commit sha defa8f8f16608f5dba7094032db2e649da168e8b

Update winit and crossbeam versions (#1177)

view details

mitchmindtree

commit sha 3518268b7f8080f44c06daf33c90c5b8cb4986d4

Add an `instancing.rs` example. (#1163) * Add an `instancing.rs` example. This is a simple-as-possible example of how to do instancing with vulkano. The example is a direct copy of the `triangle.rs` example but removes the comments in favour of only explaining the differences necessary for doing instancing. Rather than drawing one triangle in the centre of the screen, the example draws 100 instances of the triangle in a 10x10 grid and get slightly larger across each axis. * Add missing word to InstanceData struct description

view details

commit sha c71270a0e79f9a1ff4edefac13c3328c4354253f

The future is here. Some graphics cards are now only setting the transfer bit on queues with some special DMA controller relationship that can perform higher speed transfers. Let's tell the truth. (#1187)

view details

commit sha 45e71894afc1e8871c402d5c359aefe397524dd9

Shaderc version bump + update docs (#1197)

view details

Tom

commit sha e7a03b0e1edf3c88de3ca9e6e7687edf2a12f1ac

Fix image layout transitions (#1171)

view details

mitchmindtree

commit sha bb6beb89958774daad38db9a9c399cd42637f1db

Publish 0.12.0 of `vulkano`, `vulkano-win` and `vulkano-shaders`. (#1203)

view details

Niklas Jonsson

commit sha d98552fe41a9e7c7df1e87c93cc06ea9d3fd81b5

Ensure Device::active_queue_families contain no duplicates (#1192)

view details

Lucas Kent

commit sha f61193293ff8bff3e9145c56941b578a8e13a3c4

rustc is now making use of the fact that derefencing a null pointer is UB. Remove all null dereferences (#1209)

view details

Lucas Kent

commit sha fc6ac6fec135cbd3162e06542ebb2e61be116846

Fix warnings on nightly (#1213)

view details

push time in 2 months

PR opened vulkano-rs/vulkano

Fix an `abort()` in the tests.

Not sure how widespread this issue is, I'm on Mesa 20.0 currently. I've re-enabled a heap size check for RADV only because MoltenVK apparently has an issue with the reported heap sizes.

+15 -9

0 comment

3 changed files

pr created time in 2 months

create barnchgeobacter-rs/vulkano

branch : mesa-fix-test-abort

created branch time in 2 months

create barnchgeobacter-rs/rust

branch : spirv-llvm-target

created branch time in 2 months

startedssrg-vt/popcorn-compiler

started time in 2 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha 9402820acfc094b680522bfeee59a64605f8dc7b

WIP Geobacter in Rust.

view details

Richard Diamond

commit sha 3d3aefe8fb4f6544b9d8423990f3e625a28eda82

Atomic fences with target machine/OS defined scopes

view details

push time in 2 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha 9402820acfc094b680522bfeee59a64605f8dc7b

WIP Geobacter in Rust.

view details

push time in 2 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha 604cdb575579fe96bcbabf1d9a0b08241f653fe9

WIP Geobacter in Rust.

view details

Richard Diamond

commit sha 3db24efc2ced188abce997dd862d868d937fb757

Atomic fences with target machine/OS defined scopes

view details

push time in 2 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha 604cdb575579fe96bcbabf1d9a0b08241f653fe9

WIP Geobacter in Rust.

view details

push time in 2 months

PR opened mantognini/LLVM-SPIRV-Backend

[SPIRV] Add a few capability feature attrs.

Also includes a fix for compiling w/ clang-11.

+944 -766

0 comment

19 changed files

pr created time in 2 months

starteddmakarov/clop

started time in 2 months

startedarchseer/enigma

started time in 2 months

push eventgeobacter-rs/LLVM-SPIRV-Backend

Richard Diamond

commit sha 40518637baa7cfd699e0f67589039c74f16111c8

[SPIRV] Add a few capability feature attrs.

view details

push time in 2 months

startedhank/dsf2flac

started time in 2 months

startedmicrosoft/mimalloc

started time in 2 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha 83f0daad06096d285df5d62a2e840d2f57e5c25c

Create metadata for the LLVM -> spirv translator. Also a few AMDGPU specific things.

view details

push time in 2 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha 00bc63dd0c3acfd42e15a9d21dee3ed56fff29e5

Create metadata for the LLVM -> spirv translator. Also a few AMDGPU specific things.

view details

push time in 2 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha 1429b094fe51d7ab2ce1bcce7cc20fc41ec9515b

Add a compile time check that LdsArray and LdsTile are the same size.

view details

Richard Diamond

commit sha bb0c961fc025c61e414ff1a0db40c0375a01b5ab

Use host endianness and pointer size. Both Vulkan and HSA require that these two match.

view details

push time in 2 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha 417c63dfb209895375034a00689fc8e4631f8a31

Create metadata for the LLVM -> spirv translator. Also a few AMDGPU specific things.

view details

push time in 2 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha 17337f39d92e3ce28b572dc3bd6e435fe2a158a5

Create metadata for the LLVM -> spirv translator. Also a few AMDGPU specific things.

view details

push time in 2 months

startedvbarrielle/sprs

started time in 2 months

push eventgeobacter-rs/about

Richard Diamond

commit sha 6732ed9abb8af822aef945bf8e5f9cd56fc97007

AMDGPU: clarify referencing host stack variables.

view details

push time in 2 months

push eventgeobacter-rs/about

Richard Diamond

commit sha 81222b7f02b55b81d146c87a03aa4b6439c409a4

AMDGPU: add a note regarding panics in device code.

view details

push time in 2 months

push eventgeobacter-rs/about

Richard Diamond

commit sha 024071e3c94abbdb6eb6f14dfd6d869cc3b997a5

Add a note about required `RUSTFLAGS`.

view details

Richard Diamond

commit sha 122f4cda8924399427840ca70d94d9bb7685ec56

More info regarding what does and doesn't work with AMDGPU Geobacter.

view details

push time in 2 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha e6eaf68609cfa96713502bf88e4f0209213c9548

Add a note about required `RUSTFLAGS`.

view details

push time in 2 months

issue commentgeobacter-rs/geobacter

example/trivial panic

You have to set RUSTFLAGS=-Z always-encode-mir -Z always-emit-metadata so that the metadata is present for the runtime.

extraymond

comment created time in 2 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha 34760928d670deb049d189aa0a0c60009e7176d1

Add a note about required `RUSTFLAGS`.

view details

push time in 3 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha 8d75ce280ee144d6d6609b8af6ff23812ee67b6c

Slight perf increase.

view details

push time in 3 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha 29b6ee767f69d161e310151c41e99577c9736aa6

Update the GEMM readme with new performance numbers.

view details

Richard Diamond

commit sha c1a918f03d7eb4b5659e800afe3371fe6cf9c07e

Remove the `GEOBACTER_USE_LLC` note, it's not longer needed.

view details

push time in 3 months

push eventgeobacter-rs/about

Richard Diamond

commit sha 65cab9943db49ab568ade593026b3c4ec999617f

Add a basic AMDGPU programming tutorial.

view details

push time in 3 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha 6ccac995ec8bfed780f3d65eff7ba0ab682d01d6

Remove `store_masked`.

view details

push time in 3 months

startedrust-lang/mdBook

started time in 3 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha cee53ba1d4c89bb195ced15cc5aa7840ecdf97d8

Upgrade bindgen.

view details

Richard Diamond

commit sha a23f51bca72a8d11359e8e156cf77a9006c6ddd7

Fix a stub's signature to match Rustc/libcore. This mismatch was preventing inlining.

view details

push time in 3 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha 8e7c32fb2c70f85fd5aef0a390f1a245e88d895c

Add a convenience method.

view details

push time in 3 months

created taggeobacter-rs/rust

tagmerge-head-04-19-2020

Empowering everyone to build reliable and efficient software.

created time in 3 months

push eventgeobacter-rs/rust

Richard Diamond

commit sha e2a436dbb08f4fc8d456a1d48633604f6ab71175

WIP Geobacter in Rust.

view details

Richard Diamond

commit sha 95fcb661bf0977c023b9eb742284be98d83d0292

Atomic fences with target machine/OS defined scopes

view details

Richard Diamond

commit sha 6e5dc043c71d018d85a7a39e7d5761474320d92b

Merge remote-tracking branch 'remote-amdgcn-dispatch-ptr-intrinsic-branch-amdgcn-dispatch-ptr-intrinsic/amdgcn-dispatch-ptr-intrinsic' into merge-head

view details

Richard Diamond

commit sha d77ebd3e18ffb02814838e586f638e224e1fe05e

Merge remote-tracking branch 'remote-plugin-intrinsics-branch-plugin-intrinsics/plugin-intrinsics' into merge-head

view details

Richard Diamond

commit sha 88e0c87306f6e76372ecaba3901253b10eebc708

Merge remote-tracking branch 'remote-always-export-metadata-branch-always-export-metadata/always-export-metadata' into merge-head

view details

Richard Diamond

commit sha 13876dc079ae271a21d920eae401cc97d4ad891b

Merge remote-tracking branch 'remote-make-metadata-schema-pub-branch-make-metadata-schema-pub/make-metadata-schema-pub' into merge-head

view details

Richard Diamond

commit sha e7eff34fea6ac41f67e1654f76abc493ae4c63c4

Merge remote-tracking branch 'remote-polly-branch-polly/polly' into merge-head

view details

Richard Diamond

commit sha 3ced0d5e69fb861308d7cea5ec9757b08556581b

Merge remote-tracking branch 'remote-llvm-patches-branch-llvm-patches/llvm-patches' into merge-head

view details

Richard Diamond

commit sha f10be09c40c03c56d8af776b112b4afd6bca981b

Merge remote-tracking branch 'remote-tcx-driver-data-branch-tcx-driver-data/tcx-driver-data' into merge-head

view details

Richard Diamond

commit sha d72cab0dd96bd68f547dccf868e60422b18d1d97

Merge remote-tracking branch 'remote-syntax-global-new-pub-branch-syntax-global-new-pub/syntax-global-new-pub' into merge-head

view details

Richard Diamond

commit sha d716ad29d0028376ce528ea6897ec4eac030d8a9

Merge remote-tracking branch 'remote-spir-kernel-cconv-branch-spir-kernel-cconv/spir-kernel-cconv' into merge-head

view details

Richard Diamond

commit sha fb25768462d568331a72dda1a55d44796b3b774d

Merge remote-tracking branch 'remote-spirv-llvm-metadata-branch-spirv-llvm-metadata/spirv-llvm-metadata' into merge-head

view details

Richard Diamond

commit sha 3de72d5c553f14bd3f0cfbef2481724f1500fd07

Merge remote-tracking branch 'remote-spirv-abi-info-branch-spirv-abi-info/spirv-abi-info' into merge-head

view details

Richard Diamond

commit sha 30d6c6428efdfb93de27af92a14cf81b8738320d

Merge remote-tracking branch 'remote-export-rayon-branch-export-rayon/export-rayon' into merge-head

view details

Richard Diamond

commit sha debb15941fc5b00056acf4d30eef7fa6bfbf578f

Merge remote-tracking branch 'remote-rocm-atomic-fence-scopes-branch-rocm-atomic-fence-scopes/rocm-atomic-fence-scopes' into merge-head

view details

Richard Diamond

commit sha 17c2db9a8f1dac7386786d495df7cfced373100b

Merge remote-tracking branch 'remote-derive-hash-branch-derive-hash/derive-hash' into merge-head

view details

Richard Diamond

commit sha 5d76dfa0645f5da12e595272f00931747818902b

Merge remote-tracking branch 'remote-resolver-provided-cstore-branch-resolver-provided-cstore/resolver-provided-cstore' into merge-head

view details

Richard Diamond

commit sha 4890fe8e768e0801043f97da1c752ae1a8dd407f

Merge remote-tracking branch 'remote-undef-static-init-branch-undef-static-init/undef-static-init' into merge-head

view details

Richard Diamond

commit sha d7228fc6f8d468da1f0dff6e70b34d380ceb73d3

Merge remote-tracking branch 'remote-interface-pub-setup-callbacks-branch-interface-pub-setup-callbacks/interface-pub-setup-callbacks' into merge-head

view details

push time in 3 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha b32f082620055caf385a061e9a63036668ae9f2b

[GEMM example] Use the first device. This change was accidentally committed.

view details

push time in 3 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha ed00082776a94f63d9f36a32a553a98ec91ddc57

Downgrade log level.

view details

push time in 3 months

push eventgeobacter-rs/geobacter

Richard Diamond

commit sha 5b0d5c90ca247cdc8901b13c1822d630f3299e63

Device texture support. Usage in the GEMM example pushes the performance to 2.7T-ops on a Radeon VII.

view details

push time in 3 months

more