Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Method of Deducing Optimal Data Transfer Size Between an Initiator and Target

IP.com Disclosure Number: IPCOM000105280D
Original Publication Date: 1993-Jul-01
Included in the Prior Art Database: 2005-Mar-19
Document File: 2 page(s) / 61K

Publishing Venue

IBM

Related People

Shieh, JM: AUTHOR

Abstract

Disclosed is an algorithm for handling SCSI (Small Computer System Interface) I/O requests in a manner which optimizes the data transfer request of an initiator to or from a target device. When discussing data transfers, one is primarily concerned with the SCSI commands for reading and writing, as they are usually commands associated with large data transfers.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Method of Deducing Optimal Data Transfer Size Between an Initiator and Target

      Disclosed is an algorithm for handling SCSI (Small Computer
System Interface) I/O requests in a manner which optimizes the data
transfer request of an initiator to or from a target device.  When
discussing data transfers, one is primarily concerned with the SCSI
commands for reading and writing, as they are usually commands
associated with large data transfers.

      Since the SCSI controller microcode dictates how many bytes
will be moved between devices, the value that the controller picks
affects the performance of a SCSI system.  If the byte count picked
is too low, extra bus phases are required to finish the command.
When the byte count is too high, a phase mismatch will occur which
requires handling by an interrupt handler.  This interrupt handling
affects the perfor- mance of the SCSI system.

      This algorithm is designed to deduce the target device's cache
size to reduce the number of bus phases required to complete a SCSI
read or write command.  First, a cache limit variable associated with
each target device is initiated to zero when the target is first
opened.  Then for every read or write request, the microcode will
actually request a data transfer that is a maximum size for that
system.  Al- though the initiator asks for this maximum size, it will
still return only the data asked by the device driver.  The purpose
of this exagger- ated request is to cause the target to disconnect
several times while it flushes its cache and retrieves more data for
the initiat...