Integer variables are often used to indicate the number of items that must be stored in an array or other fixed-size buffer. If a variable with an overflow is used for this purpose, the resulting buffer might be too small for the data that will be copied into it. This can cause your program to crash, lead to incorrect behavior, or open security vulnerabilities.Integer values that are too large or too small may fall outside the allowable bounds for their data type, leading to unpredictable problems that can
If the texture was allocated by OpenGL (it is possible for OpenCL or other interop layers to allocate textures), then the only thing that matters for compatibility is overall texel size. So it is perfectly valid to map an image to an format and back, though again endian conversions may make this unusable in platform-neutral code.
What is the benefits about using ? Is it consume less memory or cpu?