aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/stream_executor/stream.h
diff options
context:
space:
mode:
authorGravatar Yangzihao Wang <yangzihao@google.com>2017-06-01 17:50:43 -0700
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2017-06-01 17:54:26 -0700
commit69075f3546dfc29dbef8b7c5d990f3af094cbd5f (patch)
tree2494878da9ce92431152d74419a1f984ed197d62 /tensorflow/stream_executor/stream.h
parent7d7a40309693f01359537dce97fd6ff82e19755d (diff)
Add functional support for cudnnConvolutionBiasActivationForward().
PiperOrigin-RevId: 157788425
Diffstat (limited to 'tensorflow/stream_executor/stream.h')
-rw-r--r--tensorflow/stream_executor/stream.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/tensorflow/stream_executor/stream.h b/tensorflow/stream_executor/stream.h
index 5b46b86f54..bc1d05cc08 100644
--- a/tensorflow/stream_executor/stream.h
+++ b/tensorflow/stream_executor/stream.h
@@ -245,6 +245,16 @@ class Stream {
const dnn::FilterDescriptor &filter_descriptor,
const DeviceMemory<float> &filter_data,
const dnn::ConvolutionDescriptor &convolution_descriptor,
+ const DeviceMemory<float> &biases,
+ dnn::ActivationMode activation_mode,
+ const dnn::BatchDescriptor &output_descriptor,
+ DeviceMemory<float> *output);
+
+ Stream &ThenConvolve(const dnn::BatchDescriptor &input_descriptor,
+ const DeviceMemory<float> &input_data,
+ const dnn::FilterDescriptor &filter_descriptor,
+ const DeviceMemory<float> &filter_data,
+ const dnn::ConvolutionDescriptor &convolution_descriptor,
const dnn::BatchDescriptor &output_descriptor,
DeviceMemory<float> *output);
@@ -274,6 +284,27 @@ class Stream {
const dnn::FilterDescriptor &filter_descriptor,
const DeviceMemory<Eigen::half> &filter_data,
const dnn::ConvolutionDescriptor &convolution_descriptor,
+ const DeviceMemory<Eigen::half> &biases,
+ dnn::ActivationMode activation_mode,
+ const dnn::BatchDescriptor &output_descriptor,
+ DeviceMemory<Eigen::half> *output, ScratchAllocator *scratch_allocator);
+
+ Stream &ThenConvolveWithScratch(
+ const dnn::BatchDescriptor &input_descriptor,
+ const DeviceMemory<float> &input_data,
+ const dnn::FilterDescriptor &filter_descriptor,
+ const DeviceMemory<float> &filter_data,
+ const dnn::ConvolutionDescriptor &convolution_descriptor,
+ const DeviceMemory<float> &biases, dnn::ActivationMode activation_mode,
+ const dnn::BatchDescriptor &output_descriptor,
+ DeviceMemory<float> *output, ScratchAllocator *scratch_allocator);
+
+ Stream &ThenConvolveWithScratch(
+ const dnn::BatchDescriptor &input_descriptor,
+ const DeviceMemory<Eigen::half> &input_data,
+ const dnn::FilterDescriptor &filter_descriptor,
+ const DeviceMemory<Eigen::half> &filter_data,
+ const dnn::ConvolutionDescriptor &convolution_descriptor,
const dnn::BatchDescriptor &output_descriptor,
DeviceMemory<Eigen::half> *output, ScratchAllocator *scratch_allocator);
@@ -292,6 +323,31 @@ class Stream {
const dnn::FilterDescriptor &filter_descriptor,
const DeviceMemory<float> &filter_data,
const dnn::ConvolutionDescriptor &convolution_descriptor,
+ const DeviceMemory<float> &biases, dnn::ActivationMode activation_mode,
+ const dnn::BatchDescriptor &output_descriptor,
+ DeviceMemory<float> *output, ScratchAllocator *scratch_allocator,
+ const dnn::AlgorithmConfig &algorithm_config,
+ dnn::ProfileResult *output_profile_result);
+
+ Stream &ThenConvolveWithAlgorithm(
+ const dnn::BatchDescriptor &input_descriptor,
+ const DeviceMemory<Eigen::half> &input_data,
+ const dnn::FilterDescriptor &filter_descriptor,
+ const DeviceMemory<Eigen::half> &filter_data,
+ const dnn::ConvolutionDescriptor &convolution_descriptor,
+ const DeviceMemory<Eigen::half> &biases,
+ dnn::ActivationMode activation_mode,
+ const dnn::BatchDescriptor &output_descriptor,
+ DeviceMemory<Eigen::half> *output, ScratchAllocator *scratch_allocator,
+ const dnn::AlgorithmConfig &algorithm_config,
+ dnn::ProfileResult *output_profile_result);
+
+ Stream &ThenConvolveWithAlgorithm(
+ const dnn::BatchDescriptor &input_descriptor,
+ const DeviceMemory<float> &input_data,
+ const dnn::FilterDescriptor &filter_descriptor,
+ const DeviceMemory<float> &filter_data,
+ const dnn::ConvolutionDescriptor &convolution_descriptor,
const dnn::BatchDescriptor &output_descriptor,
DeviceMemory<float> *output, ScratchAllocator *scratch_allocator,
const dnn::AlgorithmConfig &algorithm_config,