Minggu, 20 Maret 2011

NVIDIA GPU-CUDA & Komputasi Parallel

Kinerja VGA-Card dengan proses komputasi paralel:

A. NVIDIA

NVIDIA Corporation adalah sebuah perusahaan produsen prosesor grafis (graphics processing unit), kartu grafis, dan media dan alat-alat komunikasi untuk komputer pribadi, dan konsol permainan Sony Playstation 3. Produk paling terkenal dari NVIDIA adalah seri GeForce yang digunakan untuk bermain permainan komputer. Markas utama NVIDIA berada di Jalan Bebas Hambatan San Tomas, Santa Clara, California. Seri terbaru NVIDIA adalah GeForce GTX 280 yang telah menggunakan directX versi 10. *)id.wikipedia.org/nvidia



B. GPU-CUDA

GPU (Graphic Processing Unit) sendiri merupakan sebuah alat/hardware, yang berfungsi sebagai render grafis terdedikasi dalam kesatuan sistem hardware PC atau Notebook. GPU bisa berada pada Video Card khusus (VGA Card) atau terintegrasi dalam Motherboard berupa Integrated GPU. GPU berfungsi untuk mengolah dan memanipulasi grafis pada CPU (Central Processing Unit), untuk nantinya ditampilkan dalam bentuk Visual Grafis pada Monitor (output).


CUDA (Compute-Unified-Device-Architecture) adalah arsitektur komputasi paralel yang dikembangkan oleh NVIDIA. CUDA adalah mesin komputasi dalam pemrosesan grafis NVIDIA unit (GPU) yang dapat diakses oleh pengembang perangkat lunak melalui varian dari bahasa pemrograman standar industri. CUDA merupakan kumpulan program-program yang menerjemahkan teks dalam bentuk bahasa komputer (computer language) berupa source language/source code, ke dalam bentuk bahasa komputer yang lain (target language/object code). Arsitektur CUDA memungkinkan GPU (yang telah support CUDA) menjadi arsitektur terbuka seperti layaknya CPU (Central Processing Unit a.k.a Processor). Hanya, tidak seperti CPU, GPU memiliki arsitektur banyak-inti yang pararel. Setiap inti memiliki kemampuan untuk menjalankan ribuan “thread” secara simultan. Jika aplikasi yang dijalankan sesuai dengan arsitektur ini, GPU dapat menyediakan keuntungan yang lebih besar dari segi performa proses aplikasi tersebut. Berikut adalah spesifikasi*nya:

CUDA Developer(s) NVIDIA Corporation

Stable release 3.2 September 17, 2010; 5 months ago (2010-09-17)

Operating system Windows (7, Vista, XP, Server 2008, & Server 2003), Linux, Mac OS X

Type GPGPU

License Proprietary, Freeware

Website www.nvidia.com/object/cuda_home_new.html

*)id.wikipedia.org/nvidia

KEUNGGULAN ARSITEKTUR CUDA:

* CUDA menggunakan bahasa “C” standar, dengan beberapa ekstensi yang simpel.

* Scattered writes (penyebaran penulisan) – kode dapat ditulis pada tujuan-tujuan yang tersebar dalam memori.

* Shared memory – CUDA menyingkapkan wilayah memory yang cepat (berukuran 16 KB) yang dapat di bagi diantara thread-thread yang ada. Hal ini dapat digunakan sebagai user-managed-cache, sehingga mengaktifkan bandwitdth yang lebih besar (dari besaran bandwidth yang dimungkinkan), menggunakan texture loops.

* Proses download dan readbacks yang lebih cepat, dari dan ke GPU.

* Support penuh terhadap operasi integer dan bitwise.

Keterbatasan CUDA (terutama di sektor grafis) adalah; CUDA tidak support texture rendering, Bus Bandwidth dan latensi antara CPU dengan GPU bisa jadi bottleneck (tidak imbang), serta CUDA hanya terdapat pada GPU Nvidia :)

NVIDIA’s CUDA development tools terbagi atas 3 komponen kunci yaitu:

1. CUDA driver.

2. A complete CUDA toolkit.

3. CUDA SDK code samples.

CUDA Toolkit adalah pengembangan lingkunan bahasa “C” untuk CUDA-enabled GPU. Ruang lingkup pengembangan CUDA termasuk:

* NVCC “C” compiler.

* CUDA FFT and BLAS libraries for the GPU* Profiler* gdb debugger for the GPU.

* CUDA runtime driver (also available in the standard NVIDIA GPU driver).

* CUDA programming manual.



C. Parallel Processing

adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di industri keuangan, bioinformatika, dll) ataupun karena tuntutan proses komputasi yang banyak*.

*)www.id.wikipedia.org/komputasi parallel

Apa itu IT-Forensik & IT-Audit

Penjelasan dan perbedaan IT-Forensik dengan IT-Audit , antara lain:

A. IT-Forensik

IT-Forensik adalah cabang ilmu forensik digital yang berkaitan dengan bukti-bukti hukum yang ditemukan di komputer dan media penyimpanan digital. Tujuan dari forensik komputer adalah untuk memeriksa media digital secara forensik suara dengan tujuan mengidentifikasi, memelihara, memulihkan, menganalisis dan menyajikan fakta dan pendapat tentang informasi.

Berikut adalah beberapa masalah yang perlu diperhatikan dalam IT forensik:

• Jumlah data yang perlu diteliti dalam tiap kasus meningkat setiap tahunnya;

• perangkat lunak Forensik tidak stabil saat memproses besar jumlah data;

• Penegakan Hukum memiliki backlog besar dalam memproses kasus dalam waktu tertentu;


• Lebih banyak dan tekanan lebih banyak ditempatkan pada penyidik forensik digital untuk menghasilkan hasil yang dapat diandalkan dalam waktu yang sedikit.

Metodologi umum dalam proses pemeriksaan insiden sampai proses hukum:
  • Pengumpulan data/fakta dari sistem komputer (harddisk, usb-stick, log, memory-dump, internet, dll) – termasuk didalamnya data yang sdh terhapus.
  • Mendokumentasikan fakta-fakta yang ditemukan dan menjaga integritas data selama proses forensik dan hukum dengan proteksi fisik, penanganan khusus, pembuatan image, dan menggunakan algoritma HASH untuk pembuktian / verifikasi.
  • Merunut kejadian (chain of events) berdasarkan waktu kejadian.
  • Memvalidasi kejadian-kejadian tersebut dengan metode “sebab-akibat”.
  • Dokumentasi hasil yang diperoleh dan menyusun laporan.
  • Proses hukum (pengajuan delik, proses persidangan, saksi ahli, dll).

B. IT-Audit

Audit Teknologi Informasi (IT-Audit) adalah bentuk pengawasan dan pengendalian dari infrastruktur teknologi informasi secara menyeluruh. IT-Audit dapat berjalan bersama-sama dengan audit finansial dan audit internal, atau dengan kegiatan pengawasan dan evaluasi lain yang sejenis. Pada mulanya istilah ini dikenal dengan audit pemrosesan data elektronik, dan sekarang audit teknologi informasi secara umum merupakan proses pengumpulan dan evaluasi dari semua kegiatan sistem informasi dalam sebuah perusahaan. Istilah lain dari audit teknologi informasi adalah audit komputer yang banyak dipakai untuk menentukan apakah aset sistem informasi perusahaan itu telah bekerja secara efektif, dan integratif dalam mencapai target organisasinya.

IT-Audit sendiri merupakan gabungan dari berbagai macam ilmu, antara lain: Traditional Audit, Manajemen Sistem Informasi, Sistem Informasi Akuntansi, Ilmu Komputer, dan Behavioral Science.

Pada dasarnya, IT-Audit dapat dibedakan menjadi dua kategori, yaitu Pengendalian Aplikasi (Application Control) dan Pengendalian Umum (General Control). Tujuan pengendalian umum lebih menjamin integritas data yang terdapat di dalam sistem komputer dan sekaligus meyakinkan integritas program atau aplikasi yang digunakan untuk melakukan pemrosesan data. Sementara, tujuan pengendalian aplikasi dimaksudkan untuk memastikan bahwa data di-input secara benar ke dalam aplikasi, diproses secara benar, dan terdapat pengendalian yang memadai atas output yang dihasilkan.

Jumat, 18 Maret 2011

Perbedaan Jurusan di Bidang IT








Beberapa perbedaan pengertian dan tujuan dari beberapa fakultas di bidang IT, antara lain:

A. Ilmu Komputer

(Computer Science), secara umum diartikan sebagai ilmu yang mempelajari baik tentang komputasi, perangkat keras (hardware) maupun perangkat lunak (software). Ilmu komputer mencakup beragam topik yang berkaitan dengan komputer, mulai dari analisa abstrak algoritma sampai subyek yang lebih konkret seperti bahasa pemrograman, perangkat lunak, termasuk perangkat keras. Sebagai suatu disiplin ilmu, Ilmu Komputer lebih menekankan pada pemrograman komputer, dan rekayasa perangkat lunak (software), sementara teknik komputer lebih cenderung berkaitan dengan hal-hal seperti perangkat keras komputer (hardware). Ilmu Komputer mempelajari apa yang bisa dilakukan oleh beberapa program, dan apa yang tidak (komputabilitas dan intelegensia buatan), bagaimana program itu harus mengevaluasi suatu hasil (algoritma), bagaimana program harus menyimpan dan mengambil bit tertentu dari suatu informasi (struktur data), dan bagaimana program dan pengguna berkomunikasi (antarmuka pengguna dan bahasa pemrograman).Ilmu komputer berakar dari elektronika, matematika dan linguistik. Dalam tiga dekade terakhir dari abad 20, ilmu komputer telah menjadi suatu disiplin ilmu baru dan telah mengembangkan metode dan istilah sendiri. diharapkan menghasilkan lulusan dengan kemampuan yang cukup luas dimulai dari penguasaan teori (konsep) dan pengembangan software.

B. Teknik Informatika

Teknik Informatika yang merupakan salah satu disiplin ilmu pada bidang Teknologi Informasi, dikembangkan untuk memberikan pengetahuan tentang pemanfaatan Teknologi Informasi tersebut guna memenuhi kebutuhan-kebutuhan manusia yang semakin beragam dan kompleks. Jurusan Teknik Informatika Universitas Komputer Indonesia akan diarahkan untuk menghasilkan seorang analis berlandaskan pada pengetahuan informatika teoretik dengan memaksimalkan pemanfaatan teknologi on-line yang diharapkan mempunyai kemampuan untuk memecahkan berbagai masalah dalam dunia nyata . Lulusan Teknik Informatika diharapkan tidak hanya sekedar mampu menggunakan program-program aplikasi komputer (user) atau membuat program aplikasi komputer (programmer), tetapi menjembatani kebutuhan-kebutuhan user dan programmer yang kemudian diterjemahkan dalam sebuah dokumen spesifikasi formal.

C. Sistem Informasi

'Sistem Informasi' jurusan yang pada dasarnya masih berkaitan dengan informatika. Jurusan ini dapat berupa gabungan dari beberapa elemen teknologi berbasis komputer yang saling berinteraksi dan bekerja sama berdasarkan suatu prosedur kerja (aturan kerja) yang telah ditetapkan, dimana memproses dan mengolah data menjadi suatu bentuk informasi yang dapat digunakan dalam mendukung keputusan. Bisa dikatakan bahwa sistem informasi merupakan salah satu aplikasi dari Teknik Informatika.

D. Sistem Komputer

Sistem Komputer (Computer Engineering) bertujuan untuk menyiapkan ahli membangun Sistem Komputer terpadu yang mencakup Perangkat Keras (hardware), Peranti Lunak (firmware / software), dan Jaringan Komputer (network). Kurikulum disusun berdasarkan standar internasional yang didukung tenaga dosen ahli dibidangnya serta fasilitas laboratorium yang memadai guna menyiapkan tenaga lulusan yang siap berkompentesi dalam lingkungan global. Sejak 1987 Jurusan Sistem Komputer telah banyak menghasilkan lulusan yang telah bekerja di berbagai bidang industri. diharapkan menghasilkan lulusan yang mampu mendesain dan mengimplementasikan sistem yang terintegrasi baik software maupun hardware.

(http://muridoke.com/index.php/school/course/10006-001)

E. Software Engineering

Definisi Software Engineering menurut IEEE pada proyek SWEBOK(Software Engineering Body of Konwledge) adalah aplikasi sistematik, disiplin, pendekatan kuantitatif untuk pengembangan, operasi dan pemeliharaan dari software; dapat disimpulkan sebagai teknik aplikasi untuk perangkat lunak. Jadi Software Engineering adalah disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi, desain, implementasi sampai pada pemeliharaan setelah digunakan. Untuk memenuhi kebutuhan tersebut, IEEE Computer Society membentuk tim khusus untuk menyusun pohon ilmu software engineering. diharapkan menghasilkan lulusan yang mampu mengelola aktifitas pengembangan software berskala besar dalam tiap tahapannya (software development life cycle).

http://swebook.org

F. Teknologi Informasi

Jurusan ini menghasilkan lulusan yang mampu menggunakan pengetahuannya dalam menyelesaikan masalah keteknikelektroan yang dihadapinya, mengembangkan potensinya untuk mengikuti perkembangan teknologi, dan memiliki integritas, sikap mental, dan profesionalisme yang mendukung profesi yang ditekuninya.

Kompetensi Sarjana (S-1) Dalam Bidang IT

Di zaman modern saat ini, angka persaingan dalam mencari peluang /lowongan kerja sangatlah tinggi. Oleh karena itu, para sarjana harus sudah membekali dirinya masing-masing dengan ilmu pengetahuan yang mantab dan juga keahlian di bidang masing-masing secara professional, khususnya para Sarjanawan dan Sarjanawati dari bidang IT. Pengelompokan jenis pekerjaan bergantung kepada acuan yang digunakan. Akan tetapi ada hal yang sama. Salah satu cara untuk melihat lapangan pekerjaan di bidang TI adalah dengan menanyakan kepada industri TI atau mengambil data-data dari lowongan pekerjaan yang ditawarkan.

Menurut Prayitno (BKN, 2003:11), standar kompetensi mencakup tiga hal, yaitu KSA :

• Pengetahuan (Knowledge), yaitu fakta dan angka dibalik aspek teknis.

• Keterampilan (Skills), yaitu kemampuan untuk menunjukan tugas pada tingkat criteria yang dapat diterima secara terus menerus dengan kegiatan yang paling sedikit.

• Sikap (Attitude), yaitu yang ditunjukan kepada pelanggan dan orang lain bahwa yang bersangkutan mampu berada dalam lingkungan kerjanya.

Ada beberapa kompetensi yang harus dimiliki oleh seorang lulusan Sarjana IT, antara lain:

A. Network Administration

Tugas sehari-hari sang administrator, antara lain memberi dukungan administratif pada pengguna software dan memelihara perangkat keras maupun lunak untuk jaringan, menganalisa masalah, dan memantau kerja jaringan agar selalu tersedia bagi pengguna sistem. Kompetensi yang harus dimiliki:

Ø Basic Hardware Networking.

Ø Basic IP dan Subnetting.

Ø Technology Switching dan Routing.

Ø Technology Server.

Ø Pengelolaan Network Security.

Ø Monitor dan Administrasi Network Security.

Ø Backup.

B. Network Designer

Tugas sehari-hari seorang Designer, antara lain mendesain jaringan sesuai dengan kebutuhan perusahaan, mengawasi dan mengembangkan jaringan skala besar, menganalisa jaringan apabila terjadi kerusakan. Kompetensi yang harus dimiliki:

Ø Basic Software Networking.

Ø Mahir dalam HTML dan CSS.

Ø Memahami FLEX, PHP, dan bahasa database.

C. Network Programmer

Tugas sang Programmer adalah membuat program yang ada dalam jaringan itu sendiri. Kompetensi yang harus dimiliki:

Ø Basic Software Networking.

Ø Mengerti bahasa pemrograman jaringan.

Ø Mampu memprogram suatu jaringan yang telah di desain oleh network designer.

D. DataBase Administrator

Tugas sehari-hari sang DB Administrator, antara lain Memonitoring dan melakukan pengolahan administrator sebuah database. Kompetensi yang harus dimiliki:

Ø Menghubungkan perangkat keras.

Ø Melakukan instalasi Microsoft Windows.

Ø Melakukan instalasi Linux.

Ø Pasang dan konfigurasi mail server.

Ø Paham FTP server dan Web server.

Ø Memahami Routing.

E. DataBase Designer

Tugas utama sang DB Designer yaitu merancang dan membuat query SQL yang dibutuhkan programmer. Kompetensi yang harus dimiliki:

Ø Memahami feature Prado SQL MAP.

Ø memudahkan programmer dalam menampilkan data yang diinginkan.

F. Help Desk (Operator)

Kompetensi yang harus dimiliki operator Help Desk, antara lain:

Ø Penggunaan perangkat lunak Internet berbasis Windows.

Ø Mengerti aplikasi Internet Explorer, telnet, ftp, IRC.

G. Technical Support

Kompetensi yang harus dimiliki para Technical Support, antara lain:

Ø Menghubungkan perangkat keras.

Ø Melakukan instalasi Microsoft Windows.

Ø Melakukan instalasi Linux.

Ø Mencari sumber kesalahan di jaringan dan memperbaikinya.

Ø Pasang dan konfigurasi Mail server, FTP server, Web server.

Senin, 14 Maret 2011

Responsibilities some MANAGERS

MANAGER’S RESPONSIBILITIES

a. CEO (Chief Executive Officer)

The responsibility of the CEO is to align the company, internally and externally, with strategic vision. The core duty of a CEO is to facilitate business outside of the company while guiding employees and other executive officers towards a central objective. A CEO must have a balance of internal and external initiatives to build a sustainable company.

b. Financial Manager

is a corporate officer primarily responsible for managing the financial risks of the corporation. This officer is also responsible for financial planning and record-keeping, as well as financial reporting to higher management. In some sectors the Financial Manager is also responsible for analysis of data. The Financial Manager typically reports to the chief executive officer and to the board of directors, and may additionally sit on the board.

c. R & D Manager

R&D management can be defined as where the tasks of innovation management are creating and commercializing inventions, meet the tasks of technology management. It covers activities such as basic research, fundamental research, technology development, advanced development, concept development, new product development, process development, prototyping, technology transfer, etc

d. Sales Manager

Sales manager is person who make attainment of an organization's sales goals in an effective & efficient manner through planning, staffing, training, leading & controlling organizational resources. Revenue, sales, and sources of funds fuel organizations and the management of that process is the most important function.

e. Production Manager

Production manager is an organizational lifecycle function within a company dealing with the planning or forecasting or marketing of a product or products at all stages of the product lifecycle.

f. Human Resources Manager

The Human Resources Manager (HRM) function includes a variety of activities, and key among them is deciding the staffing needs of an organization and whether to use independent contractors or hire employees to fill these needs, recruiting and training the best employees, ensuring they are high performers, dealing with performance issues, and ensuring your personnel and management practices conform to various regulations. Activities also include managing your approach to employee benefits and compensation, employee records and personnel policies.

g. Marketing Manager

Marketing managers are often responsible for influencing the level, timing, and composition of customer demand accepted definition of the term. In part, this is because the role of a marketing manager can vary significantly based on a business' size, corporate culture, and industry context.

h. Training Manager

Training managers conduct and supervise training and development programs for employees. Increasingly, management recognizes that training offers a way of developing skills, enhancing productivity and quality of work, and building loyalty to the firm.