7 Eylül 2012 Cuma

İşlemlere Yüksek İşlemci Önceliği Atamak


Teknik ofislerde sürekli karşılaştığımız bir durum da büyük boyutlu dosyalarla çalışmaktır. Özellikle büyük Excel dokümanları (6MB ve üstü) ile çalışmak çoğu zaman gerçekten zaman kayıplarına sebep olmaktadır. Hatta Bazen büyük AutoCAD dosyalarını açmak dakikalarınızı bile alabilir. İşte böyle durumlarda size zaman kazandıracak bir ipucunu sizinle paylaşacağım; Windows işletim sisteminde “İşlemlere Yüksek İşlemci Önceliği Atamak”.

Özetlersek, aşağıda sıralanan işlemleri yaparak işletim sisteminizin, CPU kullanımı paylaşımı yaparken sizin istediğiniz programlara öncelik vermesini sağlayacaksınız. Tahmin edebileceğiniz gibi sadece Excel’e, AutoCAD’e değil bilgisayardaki herhangi bir programa öncelik verip, dosyaları ile çalışma hızınızı arttırabilirsiniz. Belirtmekte yarar var; uygulayacağınız ayarlar kalıcı değildir. Bilgisayar tekrar başlatıldığında veya ilgili program tekrar çalıştırıldığında varsayılan ayarlara geri dönecektir. Diğer taraftan yapacağınız “işlem önceliği atamak” –hiç karşılaşmasam da - işletim sisteminizde kararsızlıklara neden olabilir.

Bir örnek üzerinden anlatıma başlayalım. Elimizde bir Excel dokümanı var. Bu dosyada 45.891 satır ve 21 kolon bilgi içeriyor. Bazı kolonlar bilgilerini =düşeyara v.b. formüller ile alıyor. Dosyanın sabit disk üzerindeki boyutu ise 8.98MB.

Kullandığım bilgisayarın özellikleri şöyle: Intel(R) Core(TM) i5 CPU, 2.67 GHz, 4GB RAM, 64bit Windows 7 İşletim sistemi.

Mevcut durumda dosyayı açmak 30 saniye sürüyor. Herhangi bir kolona filtre atmak 2 saniye, ikinci filtreyi atmak 2 saniye, filtrelerin temizlenmesi ise 4 saniye sürüyor.

Şimdi gelin birlikte Excel’e işlemci önceliği atayalım.

1) “Başlat”dan tıklayarak Excel programını çalıştırın.

2) Ekranınızın altındaki durum çubuğuna sağ tıklayın ve çıkan menüden “Görev Yöneticisini Başlat”ı tıklayın.

3) Açılan “Windows Görev Yöneticisi” penceresinden “İşlemler” sekmesini seçin.


4) “Tüm kullanıcılara ait işlemleri göster”e tıklayın.

5) Listelenen işlemler arasından “EXCEL.EXE”i bulun ve sağ tıklayın. “Öncelik Ata” > “Yüksek”i seçin.


6) Karşınıza bir uyarı mesajı çıkacaktır. “Önceliği değiştir”e tıklayın.


Şimdi sisteminiz bu programa “Yüksek öncelik” vermeye hazır. Büyük boyutlu dosyayı şimdi bu şekilde açalım.

Bu durumda dosyayı açmak yine yaklaşık 30 saniye sürüyor. Bu sürede gözle görülür bir gelişme olmamasının sebebi bilginin sabit diskten okunuyor olması olabilir.

Herhangi bir kolona filtre atmak 1,5 saniye, ikinci filtreyi atmak 1,5 saniye, filtrelerin temizlenmesi ise 3,5 saniye sürüyor. Tabi ki bu ölçümler çok kaba ölçümler, yalnız siz dosyada gün boyu çalışırken hızlanmayı daha iyi fark edeceksinizdir. Hepinize rahat ve yüksek hızda çalışmalar diliyorum.

Selamlar,


14 Nisan 2012 Cumartesi

BIM nedir? (Yapı Bilgi Modellemesi)



“BIM” kelimesi, İngilizce “Building Information Modelling” sözcüklerinin baş harflerinden oluşur. Türkçe’ye ” Yapı Bilgi Modellemesi”  olarak çevrilmiştir. Peki nedir bu BIM?

İnternet’te BIM hakkında yazılmış makaleler, araştırmalar hatta görsel anlatımlı videoları bulabilirsiniz. Burada kısa ve öz bir tanım yaparsak, BIM; bir yapı ile ilgili her türlü bilginin bir bilgisayar modeli oluşturularak, tutulması işidir.

“Bilgi” sözcüğünü biraz daha açarsak; 3 ana kırılımı bulunduğunu görürüz. 
1. Binanın 3 boyutlu bilgisayar modeli (Mimari, Statik, Mekanik ve Elektrik)
2. Binanın zaman çizelgesi (İş Programı)
3. Binanın maliyet bilgisi

Bu 3 ana kırılımdan 1.cisi binanın 3 boyutlu bilgisayar modeli olduğu için 3D (3 Boyut) olarak tanımlanır. Zaman bilgisinin eklenmesi modele 4. boyutunu verir. Maliyet bilgisi de eklendiğinde 5 boyutlu bir modeliniz olur. Bu nedenle internette 5D BIM olarak da tanımlamalar da sık sık karşınıza çıkacaktır.

3 boyutlu bilgisayar modeli, yapı mimari bilgisinin yanı sıra, yapısal (statik), mekanik ve elektrik bilgilerini de içerir, bu sayede inşaat sırasında sahada fark edilen birçok disiplin çakışması, 3 boyutlu modelde görülür ve çözülür. Saha imalatı sırasında karşılaşılan çakışmalar en aza indirilmiş olur.

Zaman bilgisinin model üzerindeki fiziksel elemanlara işlenmiş, binanın zaman ile fiziksel ilerlemesini takibini de daha anlaşılır kılar.

Hazırlanmış model üzerinden metrajların çıkarılması ve maliyetlendirilmesi. Metraj ve maliyet hatalarını en aza indirdiği gibi iş yükünü de azaltır. 

BIM sadece inşaat aşamasında proje yönetimini kolaylaştırmakla kalmaz, her türlü bilgiyi içeren bir model, binanın tüm yaşam döngüsü boyunca işletmecilere yardımcı olur. X odasına giden vana neredeydi? Gömülü ana güç hattı nereden geçiyor? Gibi soruları iyi işlenmiş bir BIM’den rahatlıkla bulabilirsiniz.

 Bu yazımızda BIM’e bir giriş yapmış olduk. Önümüzdeki günlerde, inşaat sektörünün gidişatını değiştirecek olan bu sistemin adını daha sık duyacağınıza eminim. Bu konuda Türkiye’de ilk defa Mayıs 2012’de, Turner ve Proge tarafından bir seminer düzenleniyor; “BIM Conference, Istanbul - May 2012”. İlgilinenler için detayları aşağıda paylaşıyorum.

Sağlıcakla kalın.

BIM Conference, Istanbul - May 2012

 “Turner Innovation Series” dünya çapında bazı belli başlı şehirlerde düzenlenecek bir dizi konferans yoluyla yatırım, inşaat ve tasarım alanlarında çağdaş yenilikleri sunmayı amaçlamaktadır. Bu dizi, inşaat uzmanlarını bir araya getirerek işbirliğini desteklemek ve bu yolla inşaat piyasasını geliştirmek gayesini gütmektedir.

"Turner Innovation Series"in ilk konferansı, inşaat öncesi, inşaat ve işletme süreçleri boyunca yarattığı dikkat çekici değişim açısından Yapı Bilgi Modellemesinin (Building Information Modeling – BIM) mevcut uygulamalarını ve faydalarını değerlendirecek.


22 Şubat 2012 Çarşamba

Excel Formüllerinde Kendinizin Tanımladığı Fonksiyonları Kullanma

Excel'de hücre içerisinde sürekli kullandığınız uzun formülleriniz varsa, kendi fonksiyonlarınızı kullanmak sayfa düzeni açısından faydalı olacaktır. Yaptığınız çalışmaları başka insanlar incelediği zaman anlaşılması, takibi ve hatta modifiyesi daha rahat olacaktır. Bunu yapmak için geliştirici sekmesindeki visual basic düğmesine tıklayalım.
Şimdi soldaki listede boş bir alana sağ tıklayalım ve insert ardından module’e tıklayalım. Modülümüz eklendi, şimdi formülü tanıtalım. Burada tanıtacağımız her fonksiyon için fonksiyon başını ve sonunu tanıtmalıyız. Bunu yapmak için Function FonksiyonAdı(Girdi1,Girdi2,…) as GirdiTipi ve End function terimleri kullanılmalıdır. FonksiyonAdı fonksiyonu parantez içerisinde tanımlı GirdiTipi tipindeki girdileri kullanarak bu iki satır arasında yazılmış tüm işlevleri yerine geçirecektir.
Yazmak istediğimiz fonksiyonun 2 sayı arasındaki tüm sayıları toplamasını istiyoruz. Bunun için modülümüze
Function ardısıktoplama(x, y) As Single
For i = x To y
ardısıktoplama = ardısıktoplama + i
Next i
End Function
satırlarını ekleyelim.
Bu fonksiyon single tipindeki x ve y değerini alıp for döngüsünde kullanarak sonuca ulaşır. Topladığımız sayılar tam sayı olduğu için single tanımlaması kullandık. Toplayacağımız sayılar ondalıklı sayılar olsaydı double tanımlaması kullanmalıydık. Bu tanımlamaları neden yapıyoruz? Eğer girditipi tanımlamazsanız excel gereksiz yere bellek kullanacaktır. Şu an sadece 5 satırdan oluşan bir kod hazırladık. Eğer binlerce satırdan ve yüzlerce değişkenden oluşan kodlar kullanırsanız bilgisayarınızın belleği zorlanabilir, yani excel yavaşlayabilir.
Bu fonksiyonu kullanmak için hücre içerisinde = ile başlayarak module içerisinde daha önce yazdığımız FonksiyonAdı formülünü yazıp(ardısıktoplama) parantez içerisinde (B1;B2) yazmalıyız.
Formülümüz çalışıyor, sonuç olarak 515 değerini verdi. Bazı durumlarda B1 ve B2 hücrelerini değiştirmenize rağmen formülün sonucu değişmeyebilir. Bunu engellemek için module içerisinde fonksiyonu tanımlarken for döngüsünden önce
Application.Volatile = True
satırlarını eklemeliyiz. Bunun sakıncası ise B1 ve B2 değerlerini değiştirmemenize rağmen bu formüldeki tüm işlemleri gereksiz yere tekrarlayabilir, yani excel yavaşlayabilir.
Module içerisine yukarıdaki koşullara uyarak istediğiniz kadar farklı fonksiyon tanımlayabilirsiniz. Hatta bir fonksiyon içerisinde başka bir fonksiyon bile çağırabilirsiniz. Bunun için x değerini baslangıc adlı başka bir formül ile hesaplayacağımızı varsayalım.
For döngüsünden önce
x = baslangıc(B1)
satırlarını eklemeliyiz. Bu durumda baslangıc fonksiyonu ardısıkfonksiyonu hala aktifken B1 hücresindeki değeri kullanarak yeni x değerini atayacaktır.