창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


LIST ALL
Posted by 최재일2005-11-14 12:10:30, Hit : 5476
놀라운 자바의 반복 속도.. ㅡㅡ;;
Homepage : http://daeparklotto.wo.to
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=freeboard&no=2365

500,000번 반복시키는 자바 코드입니다.
-----------------------------------------------------------
class SystemExam {
 public static void main(String args[]) {
  long start, end;
  start = System.currentTimeMillis();
  System.out.println("현재 시간 : " + start);
  // 1970년 1월 1일부터 현재까지의 시간을 밀리초로 반환
  System.out.println("500,000회의 loop를 반복 시작");

  for(int i=0; i < 500000; i++);

  System.out.println("500,000회의 loop를 반복 종료");
  end = System.currentTimeMillis();
  System.out.println("반복 종료 시간 : " + end);
  System.out.println("반복 소요된 시간 : " + (end - start));
 }
}
------------------------------------------------------------
시스템 성능에 따라 다르겠지만,
제가 테스트해본 결과.. 10밀리초가량 걸리네요 ㅡㅡㅋ

창조로 위와 비슷하게 코딩하여보았습니다.
------------------------------------------------------------
실수 : 시작시간, 종료시간;
실수 : 수;
수 := 0;

메모0.내용.추가("500,000의 반복문을 반복 시작");
시작시간 := (시각시풀어(현재시간)*3600)+(시각분풀어(현재시간)*60)+시각초풀어(현재시간)+(시각밀리풀어(현재시간)*0.001);
메모0.내용.추가("현재 시간 : " + 수를문(시각시풀어(현재시간))+"시 "+수를문(시각분풀어(현재시간))+"분 "+수를문(시각초풀어(현재시간))+"."+수를문(시각밀리풀어(현재시간))+"초");

반복 {
  수 := 수 + 1;} 까지 (수 > 500000);

종료시간 := (시각시풀어(현재시간)*3600)+(시각분풀어(현재시간)*60)+시각초풀어(현재시간)+(시각밀리풀어(현재시간)*0.001);
메모0.내용.추가("500,000의 반복문을 반복 종료");
메모0.내용.추가("반복 종료 시간 : " + 수를문(시각시풀어(현재시간))+"시 "+수를문(시각분풀어(현재시간))+"분 "+수를문(시각초풀어(현재시간))+"."+수를문(시각밀리풀어(현재시간))+"초");
메모0.내용.추가("반복에 소요된 시간 : " + 수를문(종료시간-시작시간)+"초");
------------------------------------------------------------
이 코드로 500,000회 반복시켜보니
소요시간이 140초가량.. OTL

음.. 10밀리초와 140초라....... 엄청난 속도차이;;


최재일   2005-11-14 PM 12:15:13  
되풀이 (수 < 500000)
수 := 수 + 1;
로 해도 140초가량 비슷하게 걸리네염;;
지상현   2005-11-14 PM 5:42:40  
자바도 느린 편에 속합니다;; 물론 JIT를 사용하면 어느 정도 나오겠지만요.
자바도 인터프리터거든요... 다만 최적화 상태에 따라 다르겠죠.

참고로 C나 델파이로 짠 것은 더 빠릅니다;;
자바가 그런 것들의 최대 반 정도의 성능을 낸다고 합니다.
qkrwhdgns   2005-11-14 PM 7:25:06  
창조도.. 속도개선과.. 메모리 점유률을 나추어야 하는데......
최재일   2005-11-15 AM 10:14:34  
음.. 역시나 속도;;;;
창조도 델파이로 만든걸로 알고 있는데 창조는 왜이리 느릴까요??
고감자   2005-11-15 AM 10:30:27  
자바 절대 느린 언어가 아닙니다. 전에 C++하고 속도 비교를 한 통계를 본적이 있는데 그리 차이가 나지 않더군요. 물론 C하고 비교를 해서는 안되죠. ^^
고감자   2005-11-15 AM 10:36:58  
프로그램을 만들고자 함은 개발자의 생각을 어느 틀(언어)안에 넣어서 만드는것이라 생각됩니다. 그 틀에 따라서 개발자의 생각의 폭도 넓어지죠. 저는 어느정도 속도를 희생하더라도 그런 자유로운 틀안에서 놀고싶은 마음 뿐이네요.

게다가 프로그램이 커지면 커질수록 언어적인 속도에 종속되기 보다는 개발자의 알고리즘적 테크닉에 훨씬더 영향을 많이 받죠.
같은 프로그램을 C로 Java로 짰는데 Java가 훨씬 빠를 경우가 많습니다. 바로 이런 사례들이 알고리즘적 테크닉의 중요한 증거라 할수 있죠.
고감자   2005-11-15 AM 10:42:30  
물론 제가 이 자리에서 바로 사용할수 있는 언어는 C, Python, Java정도가 됩니다.
하루에 이 세가지 언어를 다 사용해서 업무를 보는게 예사인데요.
재미로 치자면 Python이 코딩하는 재미가 제일 많고.
그다음이 C 마지막이 Java입니다.

Java는 쓸데없는 코딩량이 많아서 이클립스가 아니면 코딩량을 감당 못합니다. 그치만 Java는 안정적이라서 DB 핸들링할때 주로 쓰죠.
qkrwhdgns   2005-11-15 PM 7:02:21  
저는.. 이자리 에서.. 가장 잘 다루는 언어는.. '우리어'..
바로 창조;;;;; 다른것은 전무;;
지상현   2005-11-15 PM 7:29:28  
물론 당연히 언어에 특성에 따라 알맞는 언어를 선택해야 한다는 사실은 알고 있습니다.
그렇지만 제가 말한 것은, 프로그래머의 능력이 개입되지 않는...

언어 자체만의 성능을 두고 판단한 것이지요 ^^
똑같이 짜도 자바쪽이 더 느린 것은 사실입니다.(그게 사람이 느낄 수 있는 속도인지는 의문이지만)

여튼 저는 단순히 언어적인 특성에서 속도 비교를 한 것인데, 다른 분께 자바가 C보다 느리다라는 인상을 심어줬다면 제가 잘못 말한거겠죠.
지상현   2005-11-15 PM 7:31:53  
자바쪽이 C, C++ 보다 좀 더 고급 언어이고, 또한 왠만한 직접 접근은 제한하고 있습니다. 그 외에 가비지 컬렉션 같은 고급 언어의 수많은 부가 기능을 지원하고 있기 때문에.... 아무리 똑같이 짜도 오버헤드는 있기 마련입니다.
항상 오버헤드는 있습니다. 어셈으로 코딩 하면 가장 빠른 것이 오버헤드가 가장 적기 때문이죠.

다만 이식성에서는 자바쪽이 훨씬 유리하다는 장점이 있죠.
그러니까 속도를 보고 언어를 결정하는 것은 바보짓이라는 겁니다.

다만, 굳이 속도를 따진다면 자바보다는 C++가 더 우위라는 것입니다.
지상현   2005-11-15 PM 7:34:39  
한마디만 더 강조...^^
느리다고 하는 것은 어디까지나 상대적인 것일 뿐, 절대적인 기준이 아닙니다.
예를 들어, 100m 달리기를 했을 때 1등이 9초고 2등이 8.99 초였으면, 2등은 분명 1등보다 느린 것이지요.

느린건 느린겁니다. 다만 그 차이가 얼마나 작느냐가 중요한 것이지요.
다시 한번 말씀드리지만 자바는 언어 자체적 특성 때문에 같은 시스템과 같은 알고리즘, 같은 수준의 컴파일러 최적화에서 C++ 보다 빠를 수는 없죠. C++보다 고려해야 할 것이 더 많으니까요. 다만 어느 정도까지 속도가 비슷해지냐가 관건이 될 것입니다.

혹여나 하는 말인데, 그렇다고 무조건 C++가 좋다는 것은 아닙니다.
최재일   2005-11-16 PM 8:54:42  
근데 어쩌다 C 애기가;;;;
난 창조랑 자바랑 비교했던건데여,,
창조는 좀더 빨리질 수 없나;;
지상현   2005-11-16 PM 9:19:51  
남상기님께서 최적화를 하셔야;;
LIST ALL               GO TO THE TOP


N
C
   Subject
Posted by
Date
H
3746
   3DMark05로 테스트를;; [14]
최재일 2006/01/24  5645
3745
   헛;; 카운터가 고장났나;; [3]
최재일 2006/01/21  5018
3744
   학교에서 특강수업하는 사진 ㅋ [9]
최재일 2006/01/15  5273
3743
   TV를 제 2의 모니터로 연결;;; [11]
최재일 2006/01/13  3900
3742
   문득 창조의 실수의 범위는 어느정도나 될까해서;;; [18]
최재일 2006/01/13  3678
3741
   스타 유즈맵하다 신기해서 캡쳐 몇장~ ㅋ [6]
최재일 2006/01/11  3704
3740
   사이트 만들기 프로젝트;;
최재일 2006/01/10  2604
3739
   IQ 테스트해보세요~ ㅎㅎ [12]
최재일 2005/12/29  4334
3738
   크억~ 올 A+ 받았습니다.. ㅋ [5]
최재일 2005/12/23  4274
3737
   김환욱님이 만드신 낚시 게임 다운로드가 안되네요;;; [1]
최재일 2005/12/20  5484
3736
   학교에 있는 수업용 제 컴퓨터 스샷~ ㅎㅎ [8]
최재일 2005/12/12  5563
3735
   음.. 국산 압축 프로그램 알집을 많이 의식하는 듯.. [19]
최재일 2005/11/29  5636
3734
   [잡담] VC++.net 공부시작;; [8]
최재일 2005/11/28  2743

   놀라운 자바의 반복 속도.. ㅡㅡ;; [13]
최재일 2005/11/14  5476
3732
   모니터 화면재생빈도 몇Hz쓰시는지?? [7]
최재일 2005/11/04  3857
3731
   대박로또 후원을 해주셨습니다. ㅎㅎ [4]
최재일 2005/11/02  5516
3730
   편리한 '자동 서식'기능.. 창조에도 포함되었으면.. ^^ [14]
최재일 2005/10/31  5630
3729
   창조의 이상한 점 발견!! 버그인가? -_-;; [6]
최재일 2005/10/21  2487
3728
   오랜만에 대박로또 업데이트했어요~ ^^ [1]
최재일 2005/09/07  4912
3727
   오호~ IE 새창을 띄우지않고 새탭을 띄워 쓰니 편리하군요..ㅋㅋ [14]
최재일 2005/08/30  4529
3726
   심심해서 이미지 태그화시킨 아이콘 ㅎㅎ [3]
최재일 2005/08/26  5002
3725
   창조 메인화면이 왜 그러졍? ㅡ,.ㅡ; [2]
최재일 2005/08/19  2461
3724
   대박로또 후원자가... [4]
최재일 2005/04/18  3081
3723
   홈피 계정과 게시판 바꿨어용~ [2]
최재일 2005/01/26  3987
3722
   상진님꺼 응용한 그라데이션효과.. 평가해주세요~ ^^ [7]
최재일 2005/01/22  2676
LIST ALL   Prev [1][2][3][4][5][6] 7 [8][9][10]..[156] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인