APPROXIMATE COMPUTING
İçindekiler
Bölüm I:
• Giriş
Bölüm II:
• Arka Plan
o Olasılıksal Hesaplama ve Bilgi Teorisi
o Hata Düzeltme Kodları
o Monte Carlo Algoritmaları
o Elastik Devreler
o Elastik Devreler ve Kaliteye Duyarlı Hesaplama (QAC)
o EnerJ Aracı ve Georgia Tech ve IBM
Bölüm III:
• Literatür İncelemesi
o Yaklaşım Teknikleri
o Yazılım ve Donanımda Yaklaşım
o Artıları ve Eksileri
• Literatür İncelemesi
o Uygulamalar
o Gerçek Hayattan Örnekler
Bölüm IV:
• Potansiyel Güvenlik Açıkları
o Yaklaşık Bellekte Hata Kontrolünün Eksikliği
o Yaklaşık Depolamaya Yönelik Güvenlik Tehditleri
o Donanım Zayıflıklarının Kötüye Kullanılması
Bölüm V:
• İyileştirme Önerileri
o Bellek Erişimi için İyileştirilmiş Güvenlik
o Hata Algılama ve Düzeltme Mekanizmaları
o Kritik ve Kritik Olmayan Verilerin Ayrıştırılması
o Düzenli Güvenlik Denetimi ve Testleri
Bölüm VI:
• Sonuç
Bölüm VII:
• Referanslar
I. Giriş
Yaklaşık hesaplama, hesaplamalarda geleneksel mükemmellik beklentisine meydan okuyarak enerji verimliliğini ve yüksek performanslı hesaplamayı iyileştirmeye yardımcı olan bir tasarım stilidir (Han & Orshansky, 2013). Bu yöntem, kesin ve doğru bir sonuç yerine biraz yanlışlık içeren bir sonuç verir (Sampson et al., 2011). Küçük hataların ve yaklaşık sonuçların nihai çıktı üzerinde çok az veya hiç etkisi olmadığı uygulamalar, görüntü ve video işleme, makine öğrenimi ve veri analizi için yaygın olarak kullanılır (Liu, Lombardi ve Schulte, 2020).
Bu tür tasarımlar, birçok uygulamanın performans kalitesini düşürmeden küçük bir yanlışlığı kaldırabilmesi nedeniyle iyi sonuç verir. Bununla birlikte, doğru bir şekilde uygulamaya koymak için kendine özgü özel bir teknik gereklidir (Sampson et al., 2011). Örneklerden biri, kodlama için iyi bir model, yaklaşımları test etmek ve hata ayıklamak için araçlardır. Ayrıca, sistemlerin nihai çıktısının kullanılabilir ve bunun için yeterince iyi olmasını sağlamak da önemlidir, aksi takdirde tüm çaba enerji tasarrufu sağlamak yerine sadece enerji israfı olur.
Önemli bir gereklilik, yaklaşımın yalnızca gerekli olmayan sistemlerde veya verilerde kullanılmasıdır. Kontrol mantığı, güvenlik işlemleri, tıbbi uygulamalar, finansal işlemler vb. gibi hassasiyet ve son derece doğru verilerin gerekli olduğu sistemlerde bunu kullanamayız. Küçük hatalar veya yanlışlıklar, programın çökmesine ve daha ciddi sorunlara, hatta yasal sorunlara neden olabilir (“Approximate Computing”, 2024). Dolayısıyla, buradaki ana hedef, performansı artırmak, hız kazanmak ve enerji tasarrufu sağlamak için doğru alanlarda yararlı olacak kadar doğruluğu dengelemektir (Esmaeilzadeh et al., 2012).
Bu araştırma, yaklaşık hesaplamanın tarihsel arka planını, hem yazılım hem de donanım düzeylerinde uygulama yaklaşımında kullanılan teknikleri, her bir yaklaşımın artılarını ve eksilerini, bazı gerçek hayattan örnekleri ve uygulamaları kapsayacaktır. Ayrıca, potansiyel zayıflıklarını ve iyileştirme için bazı önerileri de inceleyecektir.
II. Arka Plan
Yaklaşık hesaplama tek bir kişi tarafından icat edilmemiştir, aksine kolektif bir çalışmanın sonucudur. Farklı alanlarda birçok araştırmacı tarafından onlarca yıl boyunca geliştirilmiştir. Ancak, bazı kişiler ve gruplar, farklı düzeylerde yaklaşık hesaplamanın geliştirilmesinde önemli roller oynamıştır.
• Olasılıksal Hesaplama ve Bilgi Teorisi:
1940'larda Claude Shannon bir bilgi teorisi ortaya attı. Bu teori, verilerin biraz parazit ile iletilmesini, ancak veri bütünlüğünün ve iletişim sistemlerinin bunu tolere etmesini sağlayan yöntemleri açıklıyordu (Shannon, 1948). Bu arada, bilim adamı
Von Neumann olasılıksal hesaplamayı analiz ediyordu. Bu kavramın temel amacı, bazı bileşenler arızalanmış ve çalışmaz hale gelmiş olsa bile bilgisayarların nasıl çalışmaya devam edebileceğini göstermektir (Von Neumann, 1956). Yaklaşık hesaplama bu iki araştırmacının doğrudan hedefi olmasa da, küçük hataların sorun olmayabileceğini göstererek bu kavramın temellerinin atılmasına katkıda bulunmuşlardır.
• Hata Düzeltme Kodları:
Richard Hamming, aynı dönemde yaklaşık hesaplama ile benzer bir kavram üzerinde çalışan başka bir araştırmacıydı. Bilgisayarlarda verilerdeki küçük hataları otomatik olarak algılayıp düzeltebilen hata düzeltme kodları geliştirdi. Örneğin, tek bir bitlik veri yanlışlıkla 0'dan 1'e geçerse, onun kodu bu hatayı kolayca tespit edip düzeltir (Hamming, 1950). Sistemin mükemmel bir hassasiyet olmadan da çalışmaya ve işlevini yerine getirmeye devam edebileceğini gösterdi. Günümüzde bu fikir hala bellek sistemlerinde, CD’lerde, DVD’lerde ve diğer kablosuz iletişim teknolojilerinde kullanılmaktadır.
• Monte Carlo Algoritmaları:
Yaklaşık hesaplamanın tohumları, 1950'lerde Stanislaw Ulam ve Nicholas Metropolis tarafından Monte Carlo algoritmaları adı verilen teknikle atıldı. Bu yöntemde, “yeterince iyi” bir cevabın, uzun süre mükemmel bir cevap beklemekten daha iyi olduğunu gösterdiler (Metropolis & Ulam, 1949). O zamanlar, bu yaklaşım büyük bir değişimdi. Bunu başarmak için, bu yöntem kesin cevap yerine yeterince yakın bir cevap elde etmek için rastgele örnekleme kullandı. “Görünüşe göre, yeterince iyi olmak dahice!”.
• Elastik Devreler ve Kaliteye Duyarlı Bilgi İşlem (QAC):
2000'li yıllarda, MIT’den Anant Agarwal ve ekibi “elastik devreler”i yarattı. Bu devreler, doğruluğu biraz azaltarak güç tasarrufu sağlamaya odaklanmıştı. Bu, video oynatma, ses tanıma gibi, %100 doğruluğun gerekli olmadığı ve farkın fark edilmeyeceği durumlar için harikadır (Sampson al., 2011). Bu yöntem mobil cihazlarda kullanılır. Örneğin, her şeyi ondalık basamağa kadar hesaplamak yerine, pil ve enerji tasarrufu sağlamak için biraz hata payı bırakırlar. Rakesh Kumar ve ekibi, UIUC’da “Kaliteye Duyarlı Bilgi İşlem” çerçevesi üzerinde çalışırken benzer bir kavram kullandılar, ancak o, yaklaşık değeri doğrudan işlemciye yerleştirdi, bu da yine enerji tasarrufu sağladı (Narayanan, 2010).
• EnerJ Aracı & Georgia Tech ve IBM:
Washington Üniversitesi’nden geliştiriciler, programcıların kodun bir kısmını @Approx veya basitçe “biraz yanlış olsa da sorun yok” olarak işaretlemelerine olanak tanıyan EnerJ adlı bir araç geliştirdiler (Sampson, Ceze ve Grossman, 2011). Bu araç, küçük hataların kabul edilebilir olduğu durumlarda
doğruluk ve güç kullanımı arasındaki dengeyi sağlamaya yardımcı oldu. Bu da yazılım geliştirmeye yaklaşım getirilmesine yol açtı. Kısa bir süre sonra, Georgia Tech ve IBM, küçük hatalara izin veren ve yine de iyi çalışan derleyici araçları gibi yongalar ve programlar tasarlamak için çalışmaya başladı (Esmaeilzadeh, 2012). Gerçek hayattaki uygulamalar, donanım ve yazılım sistemlerine odaklandılar.
III. Literatür İncelemesi
• Yaklaşık Hesaplamada Temel Teknikler:
Yaklaşık hesaplama, hız veya enerji verimliliğinde büyük avantajlar elde etmek için biraz doğruluktan ödün vermekle ilgilidir. Diğer bir deyişle, tam doğruluk gerekmediğinde bilgisayarın mükemmel bir şekilde doğru olmasını değil, “yeterince iyi” olmasını sağlıyoruz. Bu bölüm, yaklaşık hesaplamada dört temel tekniği ele almaktadır: yaklaşık toplayıcılar ve çarpanlar, döngü delme, hassasiyet ölçekleme ve voltaj ölçekleme — ve her birinin ne olduğunu, nasıl kullanıldığını vb. açıklamaktadır (Mittal, 2016; Leon et al., 2025).
o Yaklaşık Toplayıcılar ve Çarpıcılar:
Yaklaşık toplayıcılar ve çarpıcılar, daha basit ve daha hızlı donanım kullanarak neredeyse doğru sonuçlar üretmek için tasarlanmış aritmetik devrelerdir. Örneğin, bir yaklaşık toplayıcı, hız için biraz doğruluktan ödün vererek, toplama işleminde belirli bitlerin taşınmasını atlayabilir. Bu, kafanızda matematik yaparken sayıları yuvarlamaya benzer — cevap daha hızlı gelir, ancak biraz yanlış olabilir. Bu devreler, tam olanların yaptığı bazı ekstra ince ayarları atladıkları için, çok daha az güç tüketirler. Görüntü düzenleme veya müzik çalma gibi gerçek dünya görevlerinde, burada veya orada küçük bir hata önemli değildir, bu nedenle kimse fark etmeden büyük enerji tasarrufu elde edersiniz (Han & Orshansky, 2013; Venkataramani ve ark., 2015).
o Döngü delme:
Döngü delme, bir programın zaman kazanmak için bir döngünün bazı yinelemelerini kasıtlı olarak atladığı bir yazılım tekniğidir. Şu şekilde çalışır: her yinelemeyi çalıştırmak yerine, döngü örneğin her 3. döngüyü atlayabilir — bu, daha az iş yaptığı ve daha az hassas bir sonuç pahasına daha hızlı bittiği anlamına gelir. Bu, uzun bir kitabı okumak ama birkaç sayfayı atlamak gibidir — sonuna daha hızlı ulaşırsınız, ancak bazı ayrıntıları kaçırabilirsiniz. Araştırmalara göre, döngü perforasyonu, sonuç kalitesinde minimum kayıpla, belirli uygulamalarda performansı büyük ölçüde artırabilir veya enerji kullanımını azaltabilir (Sidiroglou-Douskos et al., 2011).
o Hassasiyet Ölçeklendirme:
Hassasiyet ölçeklendirme, verimliliği artırmak için hesaplamada daha düşük hassasiyetli veriler (daha az bit) kullanmayı içerir. Örneğin, 32 bit yerine 16 bit veya 8 bit sayılar kullanmak, bazı doğruluktan ödün vermek pahasına her hesaplamayı daha hızlı ve daha az güç tüketen hale getirir. Bu, milimetre işaretleri yerine sadece santimetre işaretleri olan bir cetvelle ölçüm yapmak gibidir: daha hızlıdır, ancak daha az kesindir. Uygulamada, birçok sinyal işleme ve makine öğrenimi sistemi, kalite ihtiyaçlarını karşılamak ve hızı en üst düzeye çıkarmak için yeterli hassasiyeti kullanır. Araştırmalar, sayısal hassasiyeti azaltmanın, sonuçları kabul edilebilir kalite sınırları içinde tutarken işlemeyi önemli ölçüde hızlandırabileceğini ve enerji tasarrufu sağlayabileceğini göstermektedir (Mittal, 2016; Gupta et al., 2011).
o Gerilim Ölçeklendirme:
Gerilim ölçeklendirme, enerji tasarrufu sağlamak için işlemcinin besleme gerilimini düşüren, ancak hafif bir hata riskini kabul eden bir donanım yaklaşımıdır. Daha düşük voltajda çalışmak güç kullanımını önemli ölçüde azaltır, ancak voltaj çok düşük olursa transistörler güvenilmez hale gelir ve yanlış sonuçlar üretebilir. Bu, elektrik tasarrufu için lambayı kısmaya benzer: çok daha az güç kullanırsınız, ancak çok fazla kısarsanız ışık titreyebilir (hesaplama hatalarına benzer). Mühendisler, hataların artacağı noktaya biraz daha yüksek olacak şekilde sistemlerin voltajını kasıtlı olarak düşürdüler ve hata oranlarını tolere edilebilir düzeyde tutarken büyük enerji tasarrufu sağladılar. Çalışmalar, hata oranı kontrol altında tutulduğu sürece, agresif voltaj ölçeklendirmenin hataya toleranslı senaryolarda enerji kullanımını büyük ölçüde azaltabileceğini göstermektedir (Han & Orshansky, 2013; Venkataramani et al., 2015).
• Yazılım ve Donanımda Yaklaşım:
Yaklaşık hesaplama, verimlilik elde etmek için kasıtlı olarak yanlışlık içerir. Bu, yazılımda, donanımda veya her ikisinde birden gerçekleşebilir. Her iki yaklaşımın da aşağıda açıklanacak olan avantajları vardır (Mittal, 2016).
o Yazılım Yaklaşımı:
Yazılım yaklaşımı temel olarak, “yeterince iyi” sonuçları daha verimli bir şekilde üretmek için programları değiştirmek anlamına gelir. Bazı hesaplamaları atlayarak, daha basit algoritmalar kullanarak veya hesaplamaların hassasiyetini azaltarak hem zamandan hem de enerjiden tasarruf sağlar. Örneğin, bir video akışı uygulaması, kullanıcıların fark etmediği birkaç kareyi atlayabilir veya oynatma sırasında daha düşük bir çözünürlük kullanabilir, ancak bu CPU kullanımını önemli ölçüde azaltır. Bunun bir avantajı esnekliktir: geliştiriciler, özel bir donanım olmadan yazılımdaki yaklaşım düzeyini ayarlayabilirler. Ancak, bariz kalite kaybını önlemek için kod dikkatli bir şekilde tasarlanmalıdır
(kullanıcının kalite eksikliğini fark etmesini istemezsiniz) ve hız artışları hala altta yatan donanımın yetenekleriyle sınırlıdır (Leon et al., 2025; Venkataramani et al., 2015).
o Donanım Yaklaşımı:
Get Sıla Pekşen’s stories in your inbox
Join Medium for free to get updates from this writer.
Donanım yaklaşımı daha derindir. Verimlilik için kasıtlı olarak doğruluktan ödün veren devreler veya işlemciler tasarlamayı içerir. Daha hızlı ve daha az güç tüketmek için küçük hatalar veya daha düşük hassasiyetli matematik (örneğin, 32 bit yerine 16 bit) getiren aritmetik birimler kullanabilir. Bunun bir örneği, görüntü veya konuşma tanıma gibi görevleri hızlandırmak ve aynı zamanda güç kullanımını büyük ölçüde azaltmak için düşük hassasiyetli hesaplama kullanan mobil AI yongaları ve GPU’lardır. Yaklaşık donanımın en büyük avantajı, yonganın daha basit olabilmesi veya daha az güçle çalışabilmesi nedeniyle performans ve enerji verimliliğinde önemli bir kazanç sağlamasıdır. Ancak, daha fazla doğruluk gerekiyorsa, ne yazık ki donanım bir kez üretildikten sonra yaklaşım seviyesi sabitlenir ve kolayca değiştirilemez. Modern sistemler genellikle, güç verimli yaklaşık donanım üzerinde hata toleranslı yazılım çalıştırarak her iki yaklaşımı birleştirir; bu, her iki yaklaşımın tek başına kullanılmasına kıyasla daha yüksek performans ve verimlilik sağlarken, yine de kabul edilebilir sonuçlar verir (Jouppi et al., 2017; Gupta et al., 2011).
• Yaklaşık Hesaplamanın Artıları ve Eksileri:
o Artıları:
Yaklaşık hesaplamanın önemli avantajları ve dezavantajları vardır. Olumlu tarafı, enerji verimliliği ve yürütme hızında fantastik bir iyileşme sağlayabilmesidir. Multimedya işlemeden makine öğrenimine kadar, birçok hata toleranslı sistem küçük hataları tolere edebilir, bu da sistemin doğruluğu performansla takas etmesini sağlar. Bazı hesaplamalar atlandığında veya basitleştirildiğinde daha az çaba ve güç kullanılır. Örneğin, izleyiciler genellikle bir video akışında birkaç kare atlandığında bunu fark etmezler. Benzer şekilde, k-means kümeleme gibi bir makine öğrenimi algoritması, sonuç doğruluğunda %5'lik bir düşüşü tolere ederek 50 kata kadar enerji tasarrufu sağlayabilir. Özel donanımlar bile bu toleransı kullanmaktadır; örneğin, Google’ın Tensor İşlem Birimi (TPU), AI işlemlerini etkili bir şekilde hızlandırmak için azaltılmış hassasiyetli hesaplamalar kullanır (Jouppi et al., 2017; Venkataramani ve ark., 2015).
o Dezavantajları:
Tüm bunlara rağmen, yaklaşık hesaplama mükemmel değildir. Sonuçlara doğal olarak hata getirir, bu da tıbbi ekipman veya bankacılık sistemleri gibi tam hassasiyet gerektiren görevler için uygun olmadığı anlamına gelir. Küçük bir hata bile ciddi sonuçlara neden olabilir. Bu sektörler genellikle yaklaşık yöntemlerden kaçınır. Hata ayıklama ve test etme sorunu da vardır. Sistemlerden kesin cevaplar beklersiniz, ancak yaklaşık hesaplamada, kesin olmaması beklenir, bu da doğrulamayı daha zor hale getirir. Geliştiriciler, çıktıların kabul edilebilir kalitede kalmasını sağlamak için özel araçlara ihtiyaç duyar. Yaklaşım çok fazla zorlanırsa, sonuçlar işe yaramaz hale gelebilir ve verimlilik kazançları ortadan kalkabilir. Ancak, mobil veya yapay zeka uygulamalarında olduğu gibi akıllıca kullanıldığında, mükemmel doğruluğun kritik olduğu durumlar dışında büyük bir kazanç sağlayabilir (Leon ve ark., 2025; Gupta ve ark., 2011).
• Yaklaşık hesaplama kullanan uygulamalar:
Yaklaşık hesaplama, hesaplama, depolama ve iletişimdeki doğruluğu daha iyi performansla takas ettiği için daha iyi enerji verimliliği sağlayabilir. Uygulamalarda yaklaşık hesaplamayı kullanmanın başlıca faydaları enerji tasarrufu, hızlı yanıt ve daha düşük maliyetlerdir.
o Makine öğrenimi:
Yaklaşık hesaplama, %100 doğru sonuçların gerekli olmadığı makine öğrenimi gibi görevler için oldukça iyi sonuç verir. Makine öğrenimi teknikleri, kurallar değil örnekler vererek bilgisayara öğretme yoluyla çalışır ve mükemmel doğruluk genellikle imkansız veya gereksizdir diyebiliriz. Makine öğrenimi, öğrenme sürecinde verileri ayırt etmek için zaten yaklaşım kullanır, bu nedenle yaklaşık hesaplama kullanmak çok uygun olabilir. Makine öğrenimi için yaklaşık hesaplamada kullanılan tekniklerden bazıları niceleme, budama ve bellek içi hesaplamadır (Ankur Agrawal et al. 2019). Niceleme, veri depolamada kullanılan bit sayısını azalttığı için depolama alanından tasarruf sağlar ve tüm süreci nispeten hızlandırır. Budama da sadece gerekli parçaları saklamaya ve modelleri daha hızlı ve daha küçük hale getirmeye yardımcı olur. Yaklaşık hesaplama, hesaplamaları belleğin kendisinde yaparak ve veri hareketini azaltarak bellek içi hesaplamaya yardımcı olabilir. Yaklaşık hesaplamanın makine öğrenimi için yararlı olduğu gerçek hayattan bir örnek, küçük sensörler gibi ML modüllerini çalıştırmak için sınırlı kaynaklarla çalışabilen cihazlar yaratmaktır.
o Görüntü ve video işleme:
Yaklaşık hesaplamadan çok iyi yararlanabilecek alanlardan biri görüntü ve video işleme alanlarıdır. Daha iyi anlaşılması için, görüntü ve video işleme, girdi resmi veya resim dizisi (video için) alınarak ön işleme tabi tutulur ve resmin özellikleri çıkarılır. Bu süreç, gelişmişlik için piksel piksel düzeyinde veya bölge bazında olabilir (Sekanina, Vasicek, Imrazek, 2017). Bölge tabanlı teknik, yüzler veya nesneler gibi görüntünün yalnızca kritik kısımlarını işlediği için yaklaşık hesaplamadan faydalanabilir. Videolar için de, insanlar gibi hareketli bölgeler çok yüksek ayrıntıda işlenirken arka plan yaklaşık olarak işlenir. Bu, iyi tanıma kalitesini korurken zamanlamayı azaltır.
o Nesnelerin İnterneti:
Nesnelerin interneti, verileri paylaşmak ve işlemek için internette birbirine bağlı cihazları ifade eder. Bu cihazlar genellikle çok yüksek güç gerektirmez ve yaklaşık hesaplama ile çok iyi çalışan performans açısından mükemmel doğruluk gerektirmez. Sıcaklık ve hava kalitesi sensörü, fitness ve sağlık bantları gibi giyilebilir cihazlar gibi yaklaşık hesaplama kullanan birçok IoT cihazı örneği vardır.
• Gerçek hayattan örnekler:
Günlük hayatımızda birçok ürün ve sistem yaklaşık hesaplamaya dayanmaktadır. Zoom veya Google Meet gibi bazı iletişim uygulamaları, yüz iyileştirme ve arka plan bulanıklaştırma için yaklaşık hesaplama kullanır. Google Translate de başka bir örnektir; kelimeleri tek tek analiz etmeye gerek kalmadan doğru anlamı verme konseptiyle çalışır. Yaklaşık hesaplama, çoğunlukla Intel gibi doğruluktan çok enerji verimliliğine öncelik veren şirketler tarafından kullanılır. Bu şirketler, mobil cihazlar ve IoT cihazları üretirken gömülü sistemler için yaklaşık hesaplama kullanır. Google, Google Translate ve Asistan’da kullanılan tensör işleme birimleri gibi yaklaşık hesaplama kullanır.
IV. Yaklaşık Hesaplamanın Güvenlik Açıkları (Depolama Sistemleri)
Bu yaklaşım enerji tasarrufu sağlar, ancak geleneksel hassas bellek sistemlerinin yakalayamadığı potansiyel güvenlik tehditleri de beraberinde getirir.
• Yaklaşık Bellekte Hata Kontrolünün Olmaması:
Yaklaşık hesaplamanın tehlikeli tehditlerinden biri, performans veya enerji tasarrufu için kasıtlı olarak hatalar getirmesidir (GLSVLSI’19, 2019). Bu hatalar etkili bir şekilde kontrol edilmezse, sistemin geneline yayılabilir (GLSVLSI’19, 2019). Depolama sistemlerinde bu hatalar sadece bir hesaplama veya veri parçasını etkilemekle kalmaz, zamanla birikerek felaketle sonuçlanan arızalara neden olabilir. Bu durum, tıbbi sistemler, otomotiv araçları veya finansal uygulamalar gibi yüksek veri doğruluğunun çok önemli olduğu uygulamalar için özellikle risklidir.
o Zamanla Veri Bozulması:
Hatalar yayıldıkça, yaklaşık bellekte depolanan verilerin kalitesi zamanla bozulur. Bu, büyük miktarda önemli bilgiyi depolayan ve işleyen sistemlerde sorun teşkil eder, çünkü bu hatalar henüz kontrol edilmezse ciddi sonuçlara yol açabilir.
• Yaklaşık Depolamaya Yönelik Güvenlik Tehditleri:
Yaklaşık depolama, hem donanım hem de yazılım bileşenlerini içerir. Bunların her biri çeşitli saldırılara karşı savunmasızdır (GLSVLSI’19, 2019). Örneğin, saldırganlar bozuk belleği veya yazılımdaki güvenlik açıklarını kullanarak verileri manipüle edebilir. Bu ve diğer güvenlik açıkları, yaklaşık depolamaya olan güveni sarsar.
o Veri Bütünlüğüne Saldırı:
Yaklaşık belleği hedef alan bir saldırgan, minimum kaynak kullanımıyla depolanan verileri bozabilir veya değiştirebilir (Privacy Leakages, 2018) . Bu, depolanan verilerin yanlış veya güvenilmez olduğu ve bu verilere dayanan uygulamaların genel işleyişini etkileyen sistem operasyonlarının tehlikeye atılmasına yol açabilir.
• Donanım Zayıflıklarının Kötüye Kullanılması:
Yaklaşık depolama bileşenleri, küçük hataları tolere edecek şekilde tasarlanmıştır. Bunlar kötüye kullanılabilir (Yaklaşık Hesaplama Sentezinin (Güvenlik) Güvenliği, tarihsiz). Örneğin, hata seviyelerini manipüle edebilir veya hatalar ekleyerek depolamayı bozabilir ve hizmet reddi durumuna neden olabilirler. Bu zayıflıklar tespit edilmesi zor olabilir.
o Bellek Erişimi Saldırıları:
Yaklaşık depolama daha az güvenli olabileceğinden, saldırganlar zayıf noktaları hedef alabilir. Hassas verilere yetkisiz erişim veya tehlikeli bellek işlemleri, bellek erişiminin veya kontrolünün nasıl olduğu ile ilgilidir (Privacy Leakages, 2018).
V. Yaklaşık Depolamada Güvenliği Artırmak için Öneriler
o Bellek Erişimi için Geliştirilmiş Güvenlik:
Yaklaşık belleğe yetkisiz erişimi önlemek için güvenli bellek erişim kontrolleri çok önemlidir. Bellek işlemleri için çok katmanlı yetkilendirme veya şifreleme gibi güçlü erişim kontrolleri uygulamak güvenliği artırabilir. Belleğe veri aktarmak için güvenli iletişim kanalları kullanmak, depolama işlemi sırasında verileri koruyabilir.
o Hata Algılama ve Düzeltme Mekanizmaları:
Hata algılama ve düzeltme mekanizmaları depolama sistemlerine eklenmelidir (“Yaklaşık Hesaplamada Güvenlik”, 2020). Bu sistemler, sınırların aşıldığını algılayabilmeli ve verileri tehlikeye atmadan önce hataları düzeltebilmelidir. Yedeklilik ve bellek tutarlılığı için düzenli kontroller, ciddi veri kayıplarının önlenmesine yardımcı olur.
o Kritik ve Kritik Olmayan Verilerin Ayrıştırılması:
Yaklaşık hesaplamada genel olarak, kritik verileri kritik olmayan verilerden ayırmak çok önemlidir. Kritik veriler (tıbbi kayıtlar veya finansal işlemler gibi) her zaman hassas bellekte depolanmalı, daha az kritik veriler ise yaklaşık depolama ile işlenebilir
(“Yaklaşık Hesaplamada Güvenlik”, 2020). Bu yaklaşım, hassas bilgilerin korunmasını sağlarken, gerekli olmayan görevler için yaklaşık belleğin enerji verimliliğinden yararlanmaya devam eder.
o Düzenli Güvenlik Denetimi ve Testi:
Hata yönetimi stratejilerinin etkinliğini ve tüm sistemin bütünlüğünü değerlendirmek için güvenlik denetimi düzenli olarak yapılmalıdır (GLSVLSI’19, 2019). Bu, yaklaşık depolamaya özgü güvenlik açıklarını test etmeyi ve olası saldırıları simüle etmek için yayılma testleri yapmayı içerir. Sistemi sürekli test ederek, geliştiriciler zayıflıkları tespit edebilir ve saldırganlar tarafından kullanılmadan önce gerekli güvenlik önlemlerini alabilirler.
VI. Sonuç
Yaklaşık hesaplama fiziksel bir cihaz değil, enerji ve performansın daha iyi çalışması için sistemde küçük hataların olmasına izin veren bir tasarım modelidir. Özellikle görüntü işleme, google gibi makine öğrenimi veya veri analizi yapmamız gereken bazı alanlarda. Bu alanlarda doğruluk o kadar önemli olmadığından, bu tasarımı onlar için kullanabiliriz.
İlk fikirden sonra, olasılıkla hesaplama, hata düzeltme kodları, Monte Carlo algoritmaları ve diğer bazı teknikler gibi birçok teknik ortaya çıktı ve bu teknikler sayesinde yaklaşık hesaplama gelişti. Hız ve enerji tasarrufu için bu yanlışlıkların meydana gelmesine izin veren bazı yöntemler vardır. Yaklaşık toplayıcılar ve çarpanlar, döngüleri tercih etme, hassasiyet ve voltaj ölçeklendirme gibi bazı yöntemler bunlara örnektir.
Bu tasarım hem yazılımda hem de donanımda kullanılabilir. Yazılımda kullanırsak bize daha fazla esneklik sağlar, donanımda kullanırsak daha fazla verimlilik artışı sağlar. Bu yaklaşım, tıbbi veya finansal sistemler gibi tam doğruluk gerektiren görevler için uygun değildir. Ancak, dikkatli bir şekilde uygularsak faydalı olabilir.
Bu yaklaşım modelinin gelecekte önemli bir rol oynayacağına inanıyorum. Günümüzde her şey gelişiyor. Bu tasarım, gelecekteki teknolojilerde gerçekten yararlı olabilir. Yapay zeka ve ilgili uygulamalar, sistem tasarımı veya multimedya gibi alanlarda. Her gün daha az enerji harcamak için yollar arıyoruz. Düşük güç tüketen cihazlar veya bazı gelişmiş tasarımlar için vazgeçilmez hale geleceğini düşünüyorum, ancak elbette dikkatle yönetilmesi gereken hata yönetimi gibi bazı sorunlar da olacaktır. (Sasan, 2022; Venkatesan, 2018)
VII. KAYNAKLAR
Akademik Alıntılar:
• Agarwal, A., Ranganathan, P., & Simunic, T. (2003). Elastic circuits: Low power, high efficiency. Proceedings of the International Conference on Computer Design (ICCD), 109–117. IEEE.
• Damsgaard, H. J., Grenier, A., Katare, D., Taufique, Z., Shakibhamedan, S., Troccoli, T., Chatzitsompanis, G., Kanduri, A., Ometov, A., Ding, A. Y., Taherinejad, N., Karakonstantis, G., Woods, R., & Nurmi, J. (2024). Adaptive approximate computing in Edge AI and IoT applications: A review. Journal of Systems Architecture, 150, Article 103114. https://doi.org/10.1016/j.sysarc.2024.103114
• Esmaeilzadeh, H., Sampson, A., Ceze, L., & Burger, D. (2012). Neural acceleration for general-purpose approximate programs. 45th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 449–460. https://doi.org/10.1109/MICRO.2012.51
• Han, J., & Orshansky, M. (2013). Approximate computing: An emerging paradigm for energy-efficient design. Proceedings of the 18th IEEE European Test Symposium (ETS), 1–6. https://doi.org/10.1109/ETS.2013.6569370
• Henkel, J., Li, H., Raghunathan, A., Tahoori, M. B., Venkataramani, S., Yang, X., & Zervakis, G. (2022). Approximate computing and the efficient machine learning expedition. Proceedings of the 41st IEEE/ACM International Conference on Computer-Aided Design (ICCAD). https://doi.org/10.1145/3508352.3549402
• Jouppi, N. P., Young, C., Patil, N., Patterson, D., Agrawal, G., Bajwa, R., … & Yoon, D. H. (2017). In-datacenter performance analysis of a Tensor Processing Unit. Proceedings of the 44th Annual International Symposium on Computer Architecture (ISCA), 1–12. https://doi.org/10.1145/3079856.3080246
• Leon, V., Hanif, M. A., Armeniakos, G., Jiao, X., Shafique, M., Pekmestzi, K., & Soudris, D. (2025). Approximate computing survey, Part I & II. ACM Computing Surveys, 57(7). https://doi.org/10.1145/3657456
• Liu, W., Lombardi, F., & Schulte, M. (2020). Approximate computing: From circuits to applications. Proceedings of the IEEE, 108(12), 2103–2117. https://doi.org/10.1109/JPROC.2020.3017881
• Metropolis, N., & Ulam, S. (1949). The Monte Carlo method. Journal of the American Statistical Association, 44(247), 335–341. https://doi.org/10.1080/01621459.1949.10483310
• Mittal, S. (2016). A survey of techniques for approximate computing. ACM Computing Surveys (CSUR), 48(4), 62. https://doi.org/10.1145/2893356
• Raha, A., Sutar, S., Jayakumar, H., & Raghunathan, V. (2017). Quality configurable approximate DRAM. IEEE Transactions on Computers, 66(7), 1172–1187. https://doi.org/10.1109/TC.2016.2633238
• Sampson, A., Dietl, W., Fortuna, E., Gnanapragasam, D., Ceze, L., & Grossman, D. (2011). EnerJ: Approximate data types for safe and general low-power computation. ACM SIGPLAN Notices, 46(6), 164–174. https://doi.org/10.1145/1993316.1993532
• Sekanina, L., Vasicek, Z., & Mrazek, V. (2017). Approximate circuits in low-power image and video processing: The approximate median filter. Radioengineering, 26(3), 623–632.
• Shannon, C. E. (1948). A mathematical theory of communication. Bell System Technical Journal, 27(3), 379–423. https://doi.org/10.1002/j.1538-7305.1948.tb01338.x
• Sidiroglou-Douskos, S., Misailovic, S., Hoffmann, H., & Rinard, M. (2011). Managing performance vs accuracy trade-offs with loop perforation. Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering (ESEC/FSE), 124–134. https://doi.org/10.1145/2025113.2025133
• Venkataramani, S., Ranjan, A., Roy, K., & Raghunathan, A. (2013). Security in approximate computing and approximate computing for security: Challenges and opportunities. Proceedings of the 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD), 85–90. https://doi.org/10.1109/ICCAD.2013.6691115
• Zhang, J., Jiang, Z., Han, J., & Lombardi, F. (2018). Privacy leakages in approximate adders. Proceedings of the 55th Annual Design Automation Conference (DAC). https://doi.org/10.1145/3195970.3196116
• Yan, L., Gao, X., Lu, L., Han, J., & Lombardi, F. (2019). Security threats in approximate computing systems. Proceedings of the Great Lakes Symposium on VLSI (GLSVLSI), 399–404. https://doi.org/10.1145/3299874.3319466
• Chippa, V. K., Mohapatra, D., Roy, K., & Raghunathan, A. (2013). On the (in)security of approximate computing synthesis. Proceedings of the 50th Annual Design Automation Conference (DAC), 1–9. https://doi.org/10.1145/2463209.2488876
• Hamming, R. W. (1950). Error detecting and error correcting codes. Bell System Technical Journal, 29(2), 147–160. https://doi.org/10.1002/j.1538-7305.1950.tb00463.x
• Sasan, A. (2022). Approximate computing: Techniques for reducing energy, performance, and accuracy tradeoffs. Springer.
• Venkatesan, R., Ye, Y., Raghunathan, A., & Chakradhar, S. T. (2018). Approximate circuits: Methodologies and applications. Springer.
Web Reference:
• Wikipedia contributors. (2024, April 15). Approximate computing. Wikipedia. https://en.wikipedia.org/wiki/Approximate_computing






