Skip to content

Instantly share code, notes, and snippets.

@alpgul
Created March 14, 2025 17:51
Show Gist options
  • Save alpgul/2cd548d86956168de00c02d48d00e119 to your computer and use it in GitHub Desktop.
Save alpgul/2cd548d86956168de00c02d48d00e119 to your computer and use it in GitHub Desktop.
Bu öneri, JavaScript'te 16-bit kayan nokta sayılarını (Float16) desteklemek için Float16Array, DataView ve Math.f16round gibi yeni özellikler eklemeyi amaçlar. Bu, özellikle yüksek performans gerektiren uygulamalarda (örneğin, grafik işleme veya makine öğrenimi) bellek kullanımını optimize etmek için kullanışlıdır.

Float16 on TypedArrays, DataView, Math.f16round: Detaylı Anlatım ve Örnek Kullanım

Makale Detaylı Anlatımı ve Örnek Kullanımı:
Bu öneri, JavaScript'te 16-bit kayan nokta sayılarını (Float16) desteklemek için yeni bir Float16Array türü, DataView üzerinde Float16 desteği ve Math.f16round metodu ekler. Bu özellikler, özellikle bellek kullanımının kritik olduğu uygulamalarda büyük avantajlar sağlar.

Float16Array

Float16Array, 16-bit kayan nokta sayılarını depolamak için kullanılan yeni bir türdür. Bu, Float32Array ve Float64Array gibi mevcut türlere benzer, ancak daha az bellek kullanır.

const float16Array = new Float16Array([1.5, 2.3, 3.7]);
console.log(float16Array); // Çıktı: Float16Array [1.5, 2.3, 3.7]

DataView ve Float16 Desteği

DataView, Float16 verilerini okumak ve yazmak için yeni metodlar sunar. Bu, mevcut DataView API'sini genişletir.

const buffer = new ArrayBuffer(4);
const view = new DataView(buffer);
view.setFloat16(0, 1.5, true); // Little-endian formatında yazma
console.log(view.getFloat16(0, true)); // Çıktı: 1.5

Math.f16round

Math.f16round, bir sayıyı Float16 formatına yuvarlamak için kullanılan yeni bir metoddur. Bu, özellikle Float16 verileriyle çalışırken hassasiyet kontrolü sağlar.

Math.f16round(1.337); // 1.3369140625
Math.f16round(1.337) === 1.337; // false

Referanslar ve Linkler:


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment