• 제목/요약/키워드: 모듈로 연산

검색결과 383건 처리시간 0.021초

정적 코드 내부 정보의 테이블 정규화를 통한 품질 메트릭 지표들의 가시화를 위한 추출 메커니즘 (Quality Visualization of Quality Metric Indicators based on Table Normalization of Static Code Building Information)

  • 박찬솔;문소영;김영철
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제12권5호
    • /
    • pp.199-206
    • /
    • 2023
  • 현대 소프트웨어의 규모는 커지고 있다. 이에 따라 고품질 코드를 위한 정적 분석의 중요성이 커지고 있다. 코드에 대한 정적 분석을 통해 결함과 복잡도를 식별하는 것이 필요하다. 이를 가시화하여 개발자 및 이해 관계자가 알기 쉽게 가이드도 필요하다. 기존 코드 가시화 연구들은 정적 분석의 코드 내부 정보들을 데이터베이스 테이블에 저장하여 및 품질 지표(CK Metrics, Coupling, Number of function calls, Bed smell)에 대한 계산을 질의어화 하고 추출된 정보를 가시화하는 과정을 구현하는 것에만 초점을 두었다. 이러한 연구들은 방대한 코드로부터 추출한 정보를 이용하여 코드를 분석할 때 많은 시간과 자원이 소모된다는 한계점이 있다. 또한 각 코드 내 정보 테이블들이 정규화되지 않았기 때문에 코드 내부의 정보(클래스, 함수, 속성 등)들에 대한 테이블 조인 연산 시 메모리 공간과 시간 소비가 발생할 수 있다. 이러한 문제들을 해결하기 위해, 데이터베이스 테이블의 정규화된 설계와 이를 통한 코드 내부의 품질 메트릭 지표에 대한 추출 및 가시화 메커니즘 제안한다. 이러한 메커니즘을 통해 코드 가시화 공정이 최적화되고, 개발자가 리팩토링해야 할 모듈을 가이드 할 수 있을 것으로 기대한다. 앞으로는 부분 학습도 시도할 예정이다.

통합 구조 시스템의 유한요소해석 자동화 (Automated Finite Element Analyses for Structural Integrated Systems)

  • 윤종열
    • 한국전산구조공학회논문집
    • /
    • 제37권1호
    • /
    • pp.49-56
    • /
    • 2024
  • 구조물의 동적 해석 자동화는 구조 통합 시스템에서 중요한 역할을 한다. 해석 결과에 따른 신속한 대피 또는 경고 조치가 신속하게 이루어지도록 해석 모듈은 짧은 실시간에 해석 결과를 출력해야 한다. 구조 해석법으로 세계적으로 가장 많이 사용되는 방법은 유한요소법이다. 유한요소법이 널리 사용되는 이유 중 하나는 사용의 편리다. 그러나 사용자가 유한요소망을 입력해야 하는데 요소망의 요소 수는 계상량과 정비례하고 요소망의 적절성은 에러와 연관된다. 본 연구는 시간 영역 동적 해석에서 전 단계 해석 결과를 사용하여 계산된 대표 변형률 값으로 오차를 평가하고, 요소 세분화는 절점 이동인 r-법과 요소 분할인 h-법의 조합으로 효율적으로 계산하는 적응적 요소망 형성 전략을 제시한다. 적용한 캔틸레버보와 간단한 프레임 예제를 통하여 적절한 요소망 형성, 정확성, 그리고 연산 효율성을 검증하였다. 이 방법의 간단함이 지진 하중, 풍하중, 비선형 해석 등에 의한 복잡한 구조 동적 해석에도 효율적으로 사용될 수 있는 것을 보여 준다.

농업기상재해 조기경보시스템에서의 고해상도 격자형 자료의 처리 속도 향상 기법 (Speed-up Techniques for High-Resolution Grid Data Processing in the Early Warning System for Agrometeorological Disaster)

  • 박주현;신용순;김성기;강위수;한용규;김진희;김대준;김수옥;심교문;박은우
    • 한국농림기상학회지
    • /
    • 제19권3호
    • /
    • pp.153-163
    • /
    • 2017
  • 데이터 처리 속도는 예보 능력과 관련이 있다. 최신의 입력 자료를 이용한 예측 데이터의 고속 생산은 신속한 대처를 가능하게 한다. 또한 알고리즘 작성, 계산, 결과 평가, 알고리즘 개선으로 이어지는 순환 구조를 원활하게 할 뿐만 아니라 오류 발생시 빠른 시간 내에 복구할 수 있게 하는 등 매우 중요한 요소이다. 현재의 조기경보 시스템은 매 계산 주기 마다 섬진강 유역의 10개 시군에 대해 30미터 해상도의 격자형 자료를 400개 이상 생성하고 있으며(중간 데이터 포함) 최대 9일까지 예보되는 자료를 포함할 경우 600개 이상이다. 이는 전국을 30미터 해상도로 약 45개를 생성하는 계산양과 비슷하다. 또한 14,000여개의 필지에 대한 구역 통계와, 각 래스터의 평균, 최대, 최소 등의 통계자료 생성도 함께 수행 해야 한다. 이와 같은 대량의 데이터를 한정된 시간 내로 처리하기 위한 몇 가지 기법을 적용하여 적용하였으며, 아직 적용은 못하였으나 가능성의 여부를 평가해 보는 것으로 본 연구를 진행하였다. 그 결과 앞서 제시된 래스터 캐시, NFS 캐시, 분산 처리를 모두 적용할 경우 데이터 처리 시간을 1/8로 단축 시킬 수 있음이 확인되었다. 또한 GPU를 이용한 연산을 적용할 경우 일부 모듈에 대해 매우 큰 폭으로 수행 시간을 단축 시킬 수 있음을 확인하였다. 다만 캐시를 위한 추가적인 디스크, GPU라는 별도의 하드웨어, 추가된 하드웨어 지원을 위한 고출력 전원 장치와 이에 따른 UPS (Uninterruptible power supply, 무정전 전원공급 장치)까지 상대적으로 높은 사양으로 준비해야 하는 비용적인 문제가 발생할 수 있다. 본 연구에서 제시한 네 가지 기법 중 세 가지는 계산 서버 추가를 통한 수평적 성능 확장에 관한 것이다. 하지만 서버의 추가가 처리 속도 향상으로 이어지지 않음은 물론 오히려 저하시키는 경우가 있다. 본 연구에서는 특정 시간 내로 작업을 완료 시키지 못하면 해당 작업을 반환하여 다른 서버가 처리하는 간단한 방식을 이용한다. 하지만 이런 문제를 지속적으로 발생시키는 계산 서버가 발견된다면 정해진 기준에 따라 계산 작업에서 완전히 퇴출 시켜야 성능 향상에 도움이 된다. 따라서 처리 속도에 대한 정확한 원인을 검사하고 이를 실시간으로 반영할 수 있는 기법이 필요하다.