Matlab Kod Optimizasyonu

    2225
    0

    Gerek tez çalışmam  olsun, gerekse  iş yerinde yaptığım modellemelerle bol bol  Matlab programının bol bol kullanmaktayım . Hatta Matlab bazen rüyalarıma dahi giriyor diyebilirim=P.

    Bu kadar çok Matlab üzerinde çalışınca insan ister istemez belirli bir tecrübeye sahip oluyor . Özellikle bu tecrübe, normal bir programlamanın haricinde, özel programlama tekniklerini kapsadığını söylebiliriz . Çünkü modelleriniz büyüdükçe ister istemez hızda düşmeler meydana geliyor. Fakat bu tip durumlar ile karşılaşmamak için yaptığınız kodlamalarda, bu yazımda anlatmaya başlayacağım bazı özel yöntemleri kullanabilirsiniz.

    Yazıma hemen şu şu teknikleri kullanarak , hızını artırabilirsiniz diyebilirim . Fakat öncelikle bu teknikleri acaba nerelerde uygulacağımızı bilmemiz gerek.  Kodumuzu en yavaş kısımları saptayabilmemiz için  “”Code Analyzer” ve “Matlab profiler” kullanabiliriz.

    AcceleratingMATLAB

    Code Analyzer ile eminim bir çok kez , kodlama yaparken karşılaşmışızdır. Code Analyzer size kodlama yaparken arka planda kodunuz yavaşlatacak durumları tahmin eder ve bu konuda sizi uyarır. Yukarıdaki resimde de görüldüğü üzere , bir for düngüsü  hakkında program bize bilgi vermektedir.Bu uyarılar ile başlarda çok sıkıcı gibi gözükse de , kodlamada hızlandığımız devrelerde , gözden kaçırdığınız  ve fark edilmesi zor olan hataları saptamanızda yardımcı olacaktır.

    Kod performansının değerlendirilebileceği diğer yöntem ise Matlab profiler’ dir.   Profiler ile kodunuzu çalıştırdığınızda hangi bölümde ne kadar sürede zaman harcadığını ve toplam süreyi size belirmektedir.

    AcceleratingMATLAB_2

    Yukarıdaki resimde de görüldüğü üzere , Matlab profiler bize kodu şu anki durumunu rapor halinde göz önüne sermektedir. Bu rapora göz atarsak hangi bölümler üzerine yoğunlaşmamız gerektiğiniz rahatlıkla saptayabilir.

    Bu yazımda kodlama performansınız hakkında nasıl bilgi sahibi olacağınız hakkında bilgi vermeye çalıştım. Bundan sonra yazmış olduğunuz Matlab kodunu  nasıl hızlandıracağınıza yöntemlerden bahsedeceğim .

    iyi çalışmalar…

    0 0 votes
    Article Rating
    Subscribe
    Bildir
    guest

    This site uses Akismet to reduce spam. Learn how your comment data is processed.

    0 Yorum
    Inline Feedbacks
    View all comments