Modern systems usually have drivers, which pick optimal settings automatically. So nowadays it is unlikely that significant improvement can be achieved by using hdparm. And playing with those settings requires good knowledge in the field, or else probability of damages is high.
Good results may be achieved by investing in betted hardware. Especially using solid-state drives (SSD) instead of magnetic disks (HDD) brings huge improvement. Also better interface cards can significantly help. Then, organizing disks in RAID arrays with stripping to multiple physical disks, can deliver better IO values.
Regarding the question about hdparm test results:
Linux uses available RAM to cache the IO operations, whenever possible. You can see size of this cache, e.g. with ‘top’ as ‘buff/cache’. It means, for usual IO operations data is put to memory and then transferred to disk (for write operations) or to the requesting process (for reads). Next read operation of the same data will not access storage, but deliver data directly from memory.
hdparm -t reads certain amount of data from storage. Then erases the cache area, where these data have been buffered, and reads them again. The measured throughput of such operation is displayed as ‘Timing buffered disk reads’. It reflects usual reading throughput, when data is freshly obtained from disk. For example, when streaming large video from disk for the first time.
hdparm -T does similar operation, but without flushing the buffer cache. So only first operation loads data to the buffer, and repeated reading delivers data from memory without disk operations. The measured throughput is displayed as ‘Timing cached reads’. This may reflect timing experienced when displaying the same picture several times one after another.
Your title-question ‘How to check Hard Disk speed’ is difficult to answer. Experienced disk speed depends largely on type of operation. Differences may be immense. For example, when you compare sequential read of large file, with random reads of 4K pages by a database process. So I usually determine the profile of operations, I need to use the storage for, and then simulate such load with IOzone (www.iozone.org).