성능 분석이란 무엇입니까?
소프트웨어 엔지니어링과 관련된 성능 분석은 프로파일 링이라고도하며 특정 소프트웨어 프로그램의 작동 방식을 평가하는 과정 일뿐입니다. 이 프로세스는 일반적으로 프로그램로드 방법과 프로그램 사용의 각 단계가 실행될 때 발생하는 작업으로 시작됩니다. 성능 분석의 목적은 소프트웨어 프로그램이 최적의 효율성으로 작동하고 해당 효율성에 부정적인 영향을 줄 수있는 모든 문제를 식별하고 수정하는 것입니다.
또한 성능 분석을 통해 엔지니어는 프로그램이 사용 가능한 리소스를 최대한 활용할 수 있도록 구성 요소를 조정할 수 있습니다. 실시간 실행을 평가하면 소프트웨어의 전체 기능에 부정적인 영향을 미치지 않으면 서 작업 속도를 높이거나 작업을 실행하는 데 필요한 메모리 양을 변경할 수 있는지 판단 할 수 있습니다. 최종 목표는 매끄럽고 빠르게 실행되며 모든 작업이 시작될 때마다 작동하는 프로그램입니다.
성능 분석은 한 가지 유형의 동적 프로그램 분석 또는 DPA입니다. DPA는 리소스 사용 방법 및 순서를 비롯하여 프로그램이 실제로 실행될 때 발생하는 일에 중점을 둡니다. 이것은 정적 코드 분석과는 다릅니다. 정적 코드 분석은 코드 작성 방법과 명령의 논리적 연속성에 더 중점을 두는 경향이 있습니다. 그러나 두 가지 유형의 분석은 소프트웨어 및 소프트웨어 기능을 평가하고 정제하는 데 공통적 인 요소입니다.
프로그램 분석의 역사는 초창기 컴퓨팅으로 거슬러 올라갑니다. 1940 년대 최초의 "전자 두뇌"가 개발되는 동안, 주어진 시스템이 수행 할 수있는 각 기능의 효율성을 테스트하기 위해 다양한 방법이 사용되었습니다. 기술이 계속 발전함에 따라 다양한 시스템에서 실행되는 소프트웨어의 성능 수준을 평가하는 방법이 개선되어 다소 표준화되었습니다. 오늘날 시스템 설계자와 소프트웨어 프로그램 작성자는 프로그램 분석을 사용하여 특정 프로그램 릴리스에 내재 된 강점과 약점을 식별하고 모든 문제에 대한 수정 사항을 작성합니다. 성능 분석에 의해 수집 된 데이터는 동일한 문제가 이후 릴리스의 프로그램에 나타나지 않도록합니다.
실제 성능 분석 프로세스는 여전히 프로그램의 활성 작동 중에 수동 검토를 통해 수행되거나 자동화 된 프로파일 러를 사용하여 데이터를 컴파일하여 자동으로 완료 될 수 있습니다. 두 경우 모두 소프트웨어 작성기 또는 시스템 설계자가 주어진 시스템이나 네트워크에서 프로그램이 최대 효율로 작동하기 위해 수행해야 할 작업을 결정할 수있는 정보가 캡처됩니다. 성능 분석은 한 번만 수행 한 다음 완료된 것으로 간주되는 작업이 아닙니다. 하드웨어 변경뿐만 아니라 다른 프로그램에 대한 업데이트가 분석을 수행하는 프로그램의 효율성에 영향을 줄 수 있기 때문에 시스템 관리자가 반복적으로 성능 분석을 실행하는 것은 드문 일이 아닙니다.