# Counter Algorithm Counter Types

Counter algorithm counter types may calculate rates or averages bytes for a sample or over a time period for a particular operation.

The **AvgDiskBytesPerTransfer** property in the
**Win32_PerfRawData_PerfDisk_PhysicalDisk** class uses the PERF_AVERAGE_BULK countertype. In this case, the transfer is the operation, and the accumulating number of bytes that are sent is the counter data. For any two samples, dividing the difference of accumulated bytes by the difference in accumulating transfers will produce the average number of bytes per transfer during the period between the samples.

The following counter algorithms are provided:

CounterType | Description |
---|---|

PERF_AVERAGE_BULK Decimal 1073874176 | Number of items processed, on average, during an operation. This counter type displays a ratio of the items processed (such as bytes sent) to the number of operations completed, and requires a base property with PERF_AVERAGE_BASE as the counter type. |

PERF_COUNTER_COUNTER Decimal 272696320 | Average number of operations completed during each second of the sample interval. . |

PERF_SAMPLE_COUNTER Decimal 4260864 | Average number of operations completed in one second. This counter type requires a base property with the counter type PERF_SAMPLE_BASE. |

PERF_COUNTER_BULK_COUNT Decimal 272696576 | Average number of operations completed during each second of the sample interval. This counter type is the same as the PERF_COUNTER_COUNTER type, but it uses larger fields to accommodate larger values. |

## Related topics

Show: