Byte-for-byte reads are going to be absurdly slow. You always need to implement the bulk form.