Table of Contents

Class AdvancedTransferResult

Namespace
DotCompute.Memory.Types
Assembly
DotCompute.Memory.dll

Represents the result of an advanced memory transfer operation.

public class AdvancedTransferResult
Inheritance
AdvancedTransferResult
Inherited Members

Remarks

This class provides detailed information about a memory transfer operation, including performance metrics, optimization strategies used, and data integrity verification results.

Properties

ChunkCount

Gets or sets the number of chunks used in the transfer.

public int ChunkCount { get; set; }

Property Value

int

The number of chunks if the transfer was chunked, otherwise 1.

CompressionRatio

Gets or sets the compression ratio achieved.

public double CompressionRatio { get; set; }

Property Value

double

The compression ratio (1.0 means no compression, >1.0 means data was compressed).

Duration

Gets or sets the duration of the transfer operation.

public TimeSpan Duration { get; set; }

Property Value

TimeSpan

The time taken to complete the transfer.

EfficiencyRatio

Gets or sets the efficiency ratio of the transfer operation.

public double EfficiencyRatio { get; set; }

Property Value

double

A ratio indicating the efficiency of the transfer (higher values indicate better efficiency).

EndTime

Gets or sets the end time of the transfer operation.

public DateTimeOffset EndTime { get; set; }

Property Value

DateTimeOffset

The UTC timestamp when the transfer completed.

Error

Gets or sets any error that occurred during the transfer.

public Exception? Error { get; set; }

Property Value

Exception

The exception that occurred, or null if the transfer succeeded.

ErrorMessage

Gets or sets any error message that occurred during the transfer.

public string? ErrorMessage { get; set; }

Property Value

string

The error message, or null if the transfer succeeded.

IntegrityCheckPassed

Gets or sets a value indicating whether the integrity check passed.

public bool? IntegrityCheckPassed { get; set; }

Property Value

bool?

True if the integrity verification passed; null if not performed.

IntegrityVerified

Gets or sets a value indicating whether data integrity was verified.

public bool IntegrityVerified { get; set; }

Property Value

bool

True if data integrity verification was performed; otherwise, false.

MemoryPressure

Gets or sets the memory pressure at the time of transfer.

public double MemoryPressure { get; set; }

Property Value

double

A value between 0 and 1 indicating memory pressure (1 = maximum pressure).

Metadata

Gets or sets additional metadata about the transfer.

public Dictionary<string, object>? Metadata { get; set; }

Property Value

Dictionary<string, object>

A dictionary containing additional transfer metadata.

ResultBuffer

Gets or sets the resulting memory buffer from the transfer.

public object? ResultBuffer { get; set; }

Property Value

object

The memory buffer containing the transferred data, or null if the transfer failed.

RetryCount

Gets or sets the number of retry attempts made.

public int RetryCount { get; set; }

Property Value

int

The number of times the transfer was retried due to failures.

StartTime

Gets or sets the start time of the transfer operation.

public DateTimeOffset StartTime { get; set; }

Property Value

DateTimeOffset

The UTC timestamp when the transfer began.

Success

Gets or sets a value indicating whether the transfer succeeded.

public bool Success { get; set; }

Property Value

bool

True if the transfer completed without errors; otherwise, false.

ThroughputBytesPerSecond

Gets or sets the transfer throughput in bytes per second.

public double ThroughputBytesPerSecond { get; set; }

Property Value

double

The average transfer rate in bytes per second.

ThroughputMBps

Gets or sets the transfer throughput in megabytes per second.

public double ThroughputMBps { get; set; }

Property Value

double

The average transfer rate in megabytes per second.

TotalBytes

Gets or sets the total number of bytes transferred.

public long TotalBytes { get; set; }

Property Value

long

The size of the data transferred in bytes.

TransferIndex

Gets or sets the index of the transfer in a batch operation.

public int TransferIndex { get; set; }

Property Value

int

The zero-based index of the transfer operation in a batch.

TransferredBuffer

Gets or sets the transferred unified memory buffer.

public IUnifiedMemoryBuffer? TransferredBuffer { get; set; }

Property Value

IUnifiedMemoryBuffer

The unified memory buffer that was transferred, or null if the transfer failed.

UsedCompression

Gets or sets a value indicating whether compression was used.

public bool UsedCompression { get; set; }

Property Value

bool

True if data compression was applied; otherwise, false.

UsedMemoryMapping

Gets or sets a value indicating whether memory mapping was used.

public bool UsedMemoryMapping { get; set; }

Property Value

bool

True if memory-mapped files were used; otherwise, false.

UsedStreaming

Gets or sets a value indicating whether streaming was used.

public bool UsedStreaming { get; set; }

Property Value

bool

True if streaming transfer was used; otherwise, false.

Methods

ToString()

Gets a formatted summary of the transfer result.

public override string ToString()

Returns

string

A human-readable summary of the transfer operation.