Performance difference between sampling a texture and reading multiple matrices

Anyone knows how much slower SampleTex operation is compared to reading a value from matrix 4x4, for example if i would store a value per row inside a 1x16 texture - such that it will give me 4 floats per sample . or if we would to store the same amount of data inside 4 Matrix4X4 - and would need to read 4 of these matrices ?

The idea here being packing the same amount of information inside a 16x1 rgba : 1 read ( vs ) 4 vars : mat4x4-float : 4 reads

Besides being highly hardware-dependent, I reckon that the compiler will pretty much emit almost idential instructions in both of those cases. Many small sequential memory accesses on the same region will be combined into fewer large ones. That means reading x amounts of sequential data - regardless of how - will generally result in similar execution times. Profiling your code will almost certainly give you more insights on what might be better in your project, or it may turn out to not matter at all.

Some drivers may patch the uniform data directly into the shader binary before execution, so it really depends on what hardware you’re targeting.
As @TriceHelix mentioned above, profiling is your best friend here and should give you a definitive answer.