Skip to content

Commit

Permalink
refactored npp ffi code into ffi
Browse files Browse the repository at this point in the history
  • Loading branch information
gerwin3 committed Aug 15, 2023
1 parent 0ecf44a commit e277707
Show file tree
Hide file tree
Showing 15 changed files with 27 additions and 29 deletions.
3 changes: 3 additions & 0 deletions src/ffi/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ pub mod memory;
pub mod ptr;
pub mod stream;

#[cfg(feature = "npp")]
pub mod npp;

/// Convenience macro for turning a CUDA error code into a `std::result::Result`.
///
/// # Usage
Expand Down
2 changes: 1 addition & 1 deletion src/npp/ffi/context.rs → src/ffi/npp/context.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use cpp::cpp;

use crate::ffi::device::Device;
use crate::npp::ffi::result;
use crate::ffi::npp::result;
use crate::stream::Stream;

/// NPP stream context structure.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use cpp::cpp;

use crate::ffi::npp::context::Context;
use crate::ffi::npp::result;
use crate::npp::constant_border::ConstantBorder;
use crate::npp::ffi::context::Context;
use crate::npp::ffi::result;

type Result<T> = std::result::Result<T, crate::npp::error::Error>;

Expand Down Expand Up @@ -64,7 +64,7 @@ pub fn copy_constant_border(
mod tests {
use super::*;

use crate::npp::ffi::context::Context;
use crate::ffi::npp::context::Context;
use crate::npp::tests::image::*;
use crate::npp::tests::sync::memory::*;

Expand Down
File renamed without changes.
File renamed without changes.
6 changes: 3 additions & 3 deletions src/npp/ffi/remap.rs → src/ffi/npp/remap.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use cpp::cpp;

use crate::npp::ffi::context::Context;
use crate::npp::ffi::result;
use crate::ffi::npp::context::Context;
use crate::ffi::npp::result;

type Result<T> = std::result::Result<T, crate::npp::error::Error>;

Expand Down Expand Up @@ -91,7 +91,7 @@ pub fn remap(
mod tests {
use super::*;

use crate::npp::ffi::context::Context;
use crate::ffi::npp::context::Context;
use crate::npp::tests::image::*;
use crate::npp::tests::sync::memory::*;

Expand Down
6 changes: 3 additions & 3 deletions src/npp/ffi/resize.rs → src/ffi/npp/resize.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use cpp::cpp;

use crate::npp::ffi::context::Context;
use crate::npp::ffi::result;
use crate::ffi::npp::context::Context;
use crate::ffi::npp::result;
use crate::npp::region::Region;

type Result<T> = std::result::Result<T, crate::npp::error::Error>;
Expand Down Expand Up @@ -88,7 +88,7 @@ pub fn resize(
mod tests {
use super::*;

use crate::npp::ffi::context::Context;
use crate::ffi::npp::context::Context;
use crate::npp::tests::image::*;
use crate::npp::tests::sync::memory::*;

Expand Down
6 changes: 3 additions & 3 deletions src/npp/ffi/resize_batch.rs → src/ffi/npp/resize_batch.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use cpp::cpp;

use crate::npp::ffi::context::Context;
use crate::npp::ffi::result;
use crate::ffi::npp::context::Context;
use crate::ffi::npp::result;
use crate::npp::region::Region;

type Result<T> = std::result::Result<T, crate::npp::error::Error>;
Expand Down Expand Up @@ -189,7 +189,7 @@ pub fn resize_batch(
mod tests {
use super::*;

use crate::npp::ffi::context::Context;
use crate::ffi::npp::context::Context;
use crate::npp::tests::sync::memory::*;

#[test]
Expand Down
3 changes: 1 addition & 2 deletions src/npp/copy_constant_border.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
use crate::memory::DeviceBuffer2D;
use crate::npp::constant_border::ConstantBorder;
use crate::npp::ffi;
use crate::npp::stream::Stream;
use crate::runtime::Future;

Expand Down Expand Up @@ -39,7 +38,7 @@ pub async fn copy_constant_border(

let context = stream.to_context();
Future::new(move || {
ffi::copy_constant_border::copy_constant_border(
crate::ffi::npp::copy_constant_border::copy_constant_border(
input.inner(),
output.inner_mut(),
constant_border,
Expand Down
3 changes: 1 addition & 2 deletions src/npp/mod.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
pub mod constant_border;
pub mod copy_constant_border;
pub mod error;
pub mod ffi;
pub mod region;
pub mod remap;
pub mod resize;
Expand All @@ -22,4 +21,4 @@ pub use stream::Stream;
pub use resize_batch::resize_batch;

#[cfg(test)]
mod tests;
pub mod tests;
3 changes: 1 addition & 2 deletions src/npp/remap.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
use crate::memory::DeviceBuffer2D;
use crate::npp::ffi;
use crate::npp::stream::Stream;
use crate::runtime::Future;

Expand Down Expand Up @@ -63,7 +62,7 @@ pub async fn remap(

let context = stream.to_context();
Future::new(move || {
ffi::remap::remap(
crate::ffi::npp::remap::remap(
input.inner(),
output.inner_mut(),
map_x.inner(),
Expand Down
3 changes: 1 addition & 2 deletions src/npp/resize.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
use crate::memory::DeviceBuffer2D;
use crate::npp::ffi;
use crate::npp::region::Region;
use crate::npp::stream::Stream;
use crate::runtime::Future;
Expand Down Expand Up @@ -42,7 +41,7 @@ pub async fn resize(

let context = stream.to_context();
Future::new(move || {
ffi::resize::resize(
crate::ffi::npp::resize::resize(
input.inner(),
input_region,
output.inner_mut(),
Expand Down
3 changes: 1 addition & 2 deletions src/npp/resize_batch.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
use crate::memory::DeviceBuffer2D;
use crate::npp::ffi;
use crate::npp::region::Region;
use crate::npp::stream::Stream;
use crate::runtime::Future;
Expand Down Expand Up @@ -93,7 +92,7 @@ pub async fn resize_batch(
.iter_mut()
.map(|(input, output)| (input.inner(), output.inner_mut()))
.collect::<Vec<_>>();
ffi::resize_batch::resize_batch(
crate::ffi::npp::resize_batch::resize_batch(
inputs_and_outputs_inner.as_mut_slice(),
input_region,
output_region,
Expand Down
2 changes: 1 addition & 1 deletion src/npp/stream.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use std::sync::Arc;

use crate::npp::ffi::context::Context;
use crate::ffi::npp::context::Context;
use crate::runtime::Future;

/// Represents an NPP stream.
Expand Down
10 changes: 5 additions & 5 deletions tests/functions_side_effects_test.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
#[cfg(npp)]
#[cfg(feature = "npp")]
use async_cuda::ffi::device::Device;
#[cfg(npp)]
#[cfg(feature = "npp")]
use async_cuda::stream::Stream;

#[cfg(npp)]
use async_cuda::npp::ffi::context::Context;
#[cfg(feature = "npp")]
use async_cuda::ffi::npp::context::Context;

/// This integration test helps determine which ffi functions affect the GPU state, or local thread
/// state.
Expand Down Expand Up @@ -39,7 +39,7 @@ use async_cuda::npp::ffi::context::Context;
/// | ----------------------------- | ---------------- | ------------------------- |
/// | `Context::from_null_stream` | ❌ | ✅ |
/// | `Context::from_stream` | ❌ | ✅ |
#[cfg(npp)]
#[cfg(feature = "npp")]
#[tokio::test]
async fn test_side_effects() {
// First block contains stuff we are not interested in measuring...
Expand Down

0 comments on commit e277707

Please sign in to comment.