Messages in this thread |  | | | Date | Thu, 3 Apr 1997 21:34:08 +0000 (GMT) | | From | Gerard Roudier <> | | Subject | Re: Scsi configuration |
| |
On Thu, 3 Apr 1997, Tekno Soft Snc wrote:
> Hi all,
Hi You!
> I've new DC-390F (NCR53C875) SCSI controller, and relative > hdd SCSI Quantum Fireball 3.1Gb. > I want know the correct configuration.
Your configuration is correct, however I would configure the driver with maximum queued commands = 4. The Fireball has a small cache and 8 will probably not increase performance and perhaps decrease it.
> CONFIG_SCSI_NCR53C8XX=y > # CONFIG_SCSI_NCR53C8XX_TAGGED_QUEUE is not set
Was enabled in your syslog messages.
> # CONFIG_SCSI_NCR53C8XX_IOMAPPED is not set > CONFIG_SCSI_NCR53C8XX_MAX_TAGS=8 Set it to 4
> CONFIG_SCSI_NCR53C8XX_SYNC=20 > # CONFIG_SCSI_NCR53C8XX_NO_DISCONNECT is not set > # CONFIG_SCSI_NCR53C8XX_SYMBIOS_COMPAT is not set
> testing it with hdparm: > > # hdparm -t /dev/sda > > /dev/sda: > Timing buffered disk reads: 16 MB in 5.18 seconds = 3.09 MB/sec
Seems you exactly get half the sustained data rate, the HD is able too. My first idea is that read-ahead size and/or the number of tagged commands are perhaps too large for this HD that does not have a large cache. I assume that read caching is enable, but you should verify this with the 'scsi-config' tool.
You should probably try the following:
1 - Do the same test with tagged command queuing disabled.
2 - Reduce the read ahead size used in block mode operation.
3 - Use iozone benchmark which measures speed through the file system and so will get benefits of asynchronous read-ahead.
The following (not yet compiled) code should set the read-ahead size for block mode to 60 sectors (default is 120).
------------------------------------------------------------------- int fd; char *dev_name; int ra_sectors; dev_name = "/dev/sda"; ra_sectors = 60;
fd = open(dev_name, O_RDONLY); if (fd == -1) { fprintf(stderr, "can't open %s for reading\n", dev_name); exit(1); } if (ioctl(fd, BLKRASET, ra_sectors) == -1) { fprintf(stderr, "can't tune read ahead size\n"); exit(1); } ---------------------------------------------------------------- Gerard.
|  |