«performance» 태그된 질문

코드 및 응용 프로그램 효율성의 측정 또는 개선과 관련된 질문

2
사전에 키가 포함되어 있는지 확인하는 것이 왜 더 빠르지 않은지 예외를 잡는 것보다 더 빠른 이유는 무엇입니까?
코드를 상상해보십시오. public class obj { // elided } public static Dictionary<string, obj> dict = new Dictionary<string, obj>(); 방법 1 public static obj FromDict1(string name) { if (dict.ContainsKey(name)) { return dict[name]; } return null; } 방법 2 public static obj FromDict2(string name) { try { return dict[name]; } catch (KeyNotFoundException) …

2
정렬 된 배열을 정렬되지 않은 배열보다 느리게 처리하는 이유는 무엇입니까?
Tuple<long,long,string>간단한 "사이"검색을 수행하는 무작위로 생성 된 500000 개의 개체 목록이 있습니다 . var data = new List<Tuple<long,long,string>>(500000); ... var cnt = data.Count(t => t.Item1 <= x && t.Item2 >= x); 무작위 배열을 생성하고 100 개의 무작위로 생성 된 값에 대한 검색을 실행 x하면 약 4 초 안에 검색이 완료됩니다. 그러나 …

12
'var'을 사용하면 성능에 영향을 줍니까?
이전에는 왜 많은 예제가 var키워드를 사용하는지 알 수 있었는데 익명 유형에만 필요하지만 그럼에도 불구하고 'Quicker'/ eaerier 및 'just reason'코드를 작성하는 데 사용된다는 대답을 얻었습니다. 다음은 이 링크 ( "C # 3.0 - 바르하지 Objec") I 톱 var일리노이에서 올바른 형식으로 아래로 컴파일됩니다 (당신은 기사 아래 중간에 대해 그것을 볼 것). 내 …
230 c#  performance  variables  var 

4
C ++ 11의 '자동'을 사용하여 성능을 향상시킬 수 있습니까?
autoC ++ 11 의 유형이 정확성과 유지 관리 성을 향상시키는 이유를 알 수 있습니다 . 나는 또한 성능을 향상시킬 수 있다는 것을 읽었 지만 (허브 스퍼트에 의해 거의 항상 자동 ), 나는 좋은 설명을 그리워합니다. 어떻게 auto성능 을 향상시킬 수 있습니까? 누구나 모범을 보여줄 수 있습니까?
230 c++  performance  c++11  auto 

2
240 개 이상의 요소가있는 어레이를 반복 할 때 성능에 큰 영향을 미치는 이유는 무엇입니까?
Rust에서 배열에 대해 합 루프를 실행할 때 CAPACITY> = 240 일 때 성능이 크게 저하되는 것을 발견했습니다 . CAPACITY= 239가 약 80 배 빠릅니다. Rust가 "짧은"배열에 대해 수행하는 특수 컴파일 최적화가 있습니까? 로 컴파일되었습니다 rustc -C opt-level=3. use std::time::Instant; const CAPACITY: usize = 240; const IN_LOOPS: usize = 500000; fn …

30
재귀 또는 반복?
재귀 대신 루프를 사용하거나 둘 다 동일한 목적을 수행 할 수있는 알고리즘에서 루프를 사용하면 성능이 저하됩니까? 예 : 주어진 문자열이 회문인지 확인하십시오. 간단한 반복 알고리즘이 계산서에 적합 할 때 보여주기위한 수단으로 재귀를 사용하는 많은 프로그래머를 보았습니다. 컴파일러는 무엇을 사용할지 결정하는 데 중요한 역할을합니까?


4
왜 쓸모없는 MOV 명령어를 도입하면 x86_64 어셈블리에서 타이트한 루프가 빨라 집니까?
배경: 어셈블리 언어가 내장 된 일부 파스칼 코드를 최적화하는 동안 불필요한 MOV명령을 발견 하고 제거했습니다. 놀랍게도 불필요한 명령을 제거하면 프로그램 속도 가 느려졌습니다 . 임의의 쓸모없는 MOV명령어 를 추가 하면 성능 이 더욱 향상됩니다 . 효과는 불규칙하며 실행 순서에 따라 변경 됩니다. 한 줄로 위나 아래로 같은 정크 명령이 바뀌면 …


3
512x512 매트릭스를 513x513 매트릭스를 바꾸는 것보다 훨씬 느린 이유는 무엇입니까?
크기가 다른 정사각 행렬에 대한 실험을 수행 한 후 패턴이 나타났습니다. 항상, 크기의 행렬을 전치하는 2^n것이 size의 크기를 전치하는 것보다 느립니다2^n+1 . 작은 값의 n경우 차이가 크지 않습니다. 그러나 512 이상의 값에서 큰 차이가 발생합니다. (적어도 저에게는) 면책 조항 : 함수가 요소의 이중 스왑으로 인해 실제로 행렬을 전치하지는 않지만 차이는 …



24
문자열과 StringBuilder
String와 StringBuilder( StringBuilder변경 가능) 의 차이점을 이해 하지만 둘 사이에 큰 성능 차이가 있습니까? 내가 작업하고있는 프로그램에는 많은 경우 중심 문자열 추가 (500+)가 있습니다. StringBuilder더 나은 선택을 사용 하고 있습니까?
215 c#  .net  performance 

13
성능이 중요한 경우 Java의 String.format ()을 사용해야합니까?
로그 출력 등을 위해 항상 문자열을 작성해야합니다. JDK 버전을 통해 우리는 언제 StringBuffer(많은 추가, 스레드 안전) 및 StringBuilder(많은 추가, 비 스레드 안전) 을 사용 했는지 배웠습니다 . 사용에 대한 조언은 무엇입니까 String.format()? 효율적이거나 성능이 중요한 단일 라이너에 대한 연결을 고수해야합니까? 예를 들어 못생긴 구식, String s = "What do you …


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.