디시인사이드 갤러리

마이너 갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[애니짤] 트라이캐치가 느리다는데 궁금한점이 있음앱에서 작성

ㅇㅇ(106.102) 2020.08.27 11:12:02
조회 357 추천 0 댓글 78
 

viewimage.php?id=2ab4c42ef0d0&no=24b0d769e1d32ca73cec86fa11d0283110260b998d7cfa8997b9266521891b72e75017c4666c225e091074d9920d1f4fc69083e6053cfbd6a3df89f14fdbcb7c9ea723344f6f7e508d3418da5fa56324d2c9ce46fe8e0681228fe357eea136a3c8

느릴수는 있겠는데

어차피 프로그램에서 심각한 병목은 아니지않음?

에러던지면 보통은 거기서 로직 탈출할거아냐

추천 비추천

0

고정닉 0

1

원본 첨부파일 1

댓글 영역

전체 리플 78
등록순정렬 기준선택
  • .(221.146)

    이레서 빡대가리 놈들이 ㅋㅋ....

    08.27 11:15:53
    • ㅇㅇ(106.102)

      갑자기 왜 인신공격하노...

      08.27 11:16:15
    • ㅇㅇ(106.102)

      트라이 구문안에 들어간다고 느려지는건 아니지않음? 에러터졌을때 에러 throw하는게 느리다는거아닌가

      08.27 11:18:59
    • ㅇㅇ(106.102)

      그리고 에러가 수시로터지는 시스템이면 그게 문제인거지 try catch가 병목일수있다는게 이해가안됨

      08.27 11:20:30
    • ㅇㅇ(106.102)

      잘못알고있는 부분이 있다면 지적좀 ㅇㅅㅇ

      08.27 11:20:39
    • .(221.146)

      니가 그렇게 쳐 말하면 트라이 캐치 모델이 느린건지 캐치가 느린건지 throw가 느린건지 어떻게 알음?

      08.27 12:31:04
    • .(221.146)

      트라이 캐치 모델은 존나 느린게 맞음

      08.27 12:31:17
    • .(221.146)

      트라이 구문 안에 들어가면 느려진다고 표현을 하던가 씨발 당연히 try~catch는 병목이지 stack unwind code가 생성되서 최적화가 덜 되는데

      08.27 12:32:07
    • ㅇㅇ(106.102)

      트라이캐치안에 넣기만해도 느려짐?

      08.27 12:33:22
    • ㅇㅇ(106.102)

      난 트라이캐치안에 넣는건 느려지는거랑 별 상관없다고 생각했는데 아닌갑네

      08.27 12:33:41
    • .(221.146)

      실제로 stack unwind code를 뺐을때 내 경험상 국소적으로는 최대 14%의 성능 이득 봤다.

      08.27 12:34:05
    • .(221.146)

      니가 트라이 캐치 모델을 사용하는것과 트라이 캐치 안에 코드를 집어넣는것의 차이를 모르니까 빡대가리라고 한거임 빡대가리야 또 또 트라이 캐치 안에 넣기만 해도 느려지냐 이지랄하네

      08.27 12:35:24
    • .(221.146)

      모델을 사용하게 되면 stack unwind를 위한 코드가 nothrow를 제외한 모든 코드에 포함되게 되고 그것 자체만으로 당연히 영향을 미침

      08.27 12:36:42
    • .(221.146)

      니가 try~catch 구문 안에 코드를 넣는거랑 안 넣는거랑은 전 혀 상관없다고 븅신아

      08.27 12:37:03
    • .(221.146)

      존나 1차원적인 생각만 하니까 이런 질문을 하지 ㅋㅋ 존나 웃기네 try~catch 안에 코드를 넣으면 느려짐? 이라니 ㅋㅋㅋ

      08.27 12:38:21
    • Adenosie갤로그로 이동합니다.

      이새끼는 뭐냐

      08.27 12:41:38
    • 츄럴(39.7)

      씨플플은 트라이 캐치가 포함된 코드가 실행이 안 되거나 정말 드물게 실행되도 프로그램 전체 수행 성능에 큰 영향을 미침? 씨플플 잘 몰라서 물음

      08.27 12:45:24
    • .(221.146)

      ㄴㄴ 다른것과 마찬가지로 많이 실행되는 코드가 stack unwind code때문에 최적화에 실패하거나 추가적인 코드 생성때문에 branch scope가 바뀌어서 전체적인 BB flow자체가 바뀌면 크게 성능이 바뀜.

      08.27 12:53:30
    • .(221.146)

      forceinline 하나 잘못 써서 전체 inline 흐름이 바뀌는거랑 비슷한 흐름임. 원래 인라인되려던 함수가 너무 커져서 인라인 못하고. 그래서 그걸 인라인하려던 함수가 너무 작아져서 그 전 함수가 다음 함수를 인라인하고. 이런식으로 나비효과가 심함. 이렇게 되면 전체 인라인 cost랑 scope가 완전히 바뀜. 마찬가지로 이것도 code-size와 side-effect에 관련된것이라서 운 나쁘면 성능이 매우 떨어짐. 원인 찾기도 힘듬.

      08.27 12:55:32
    • .(221.146)

      trade-off없이 동일한 behavior에서 1% 성능 차이만 나도 엄청나게 큰 차이인데 당연히 심각한 병목임.

      08.27 12:57:30
    • 츄럴(164.125)

      그렇군여, 글쓴이가 묻고 싶은 게 이거였는데 질문이 좀 이상했던 거 같음.

      08.27 13:00:18
    • .(118.235)

      모든건 컴파일러랑 아키텍처가 블랙박스라서 생기는 문제임. 그래서 컴파일러 개발자들이 code bloat를 경계하는것

      08.27 13:10:03
    • ㅇㅇ(106.102)

      하지만 빡대가리랑은 상관없다고생각함, 당연히 모를수도있는거 아니겠노...?

      08.27 13:12:52
    • ㅇㅇ(106.102)

      어쨌든 단순 사용만으로도 전체적인 병목을 불러올수있나보군, 그럼 별로인게맞네

      08.27 13:13:19
    • ㅇㅇ(106.102)

      또 궁금한게 컴파일러가 블랙박스인데 그렇다고 아예 예외처리를 안할수는없지않음?

      08.27 13:37:55
  • 츄럴(211.246)

    줘도 못먹는 C++ 말고 딴거 써요

    08.27 11:20:57
    • ㅇㅇ(106.102)

      아 C++안써요

      08.27 11:21:52
    • 츄럴(211.246)

      씨플플도 아닌데 왤케 민감하시죠

      08.27 11:24:43
    • ㅇㅇ(106.102)

      민감해져버렷~

      08.27 11:26:31
  • ㅇㅇ(39.7)

    근데 실제 서비스에서 트라이 캐치때문에 느려졌다 이런건 거의없지않을까? 딴 부분이 더 영향이 클거같은데

    08.27 11:23:42
    • ㅇㅇ(106.102)

      그래서 물어봤는데 첫댓이 빡대가리라고그러네

      08.27 11:24:00
  • fender갤로그로 이동합니다.

    예외 처리를 흐름 제어 수단으로 오용하는 경우에 한정된 이야기지. 물론 파이썬 같이 언어 철학이 그렇다면 할말은 없지만서도... 그 걸 떠나면 try-catch에 대한 찬반은 성능 보단 프로그래밍 모델 문제가 더 큰 것 같다.

    08.27 11:30:23
    • ㅇㅇ(106.102)

      읭 무슨뜻임? 예외처리가 흐름제어수단이라는게?

      08.27 11:32:00
    • ㅇㅇ(106.102)

      Promise.catch같은게 좋은디자인이라 보는거?

      08.27 11:33:27
    • ㅇㅇ(106.102)

      여튼 두개 주제를 한꺼번에 말한거같긴한데 일단 첫 얘기부터 다시 설명해주셈

      08.27 11:35:20
    • fender갤로그로 이동합니다.

      가끔 예외를 진짜 예외 상황에 던지는게 아니라 그냥 분기에서 쉽게 빠져 나오려고 던지는 관행이 있거든. 위에 이야기처럼 언어 구현에 따라 그건 일상적으로 사용할 경우엔 오버헤드가 무시할 수 없기 때문에, 예외 처리에 대한 성능 차원의 비판이 유효할 수 있는 사례라고 본다.

      08.27 11:36:45
    • ㅇㅇ(106.102)

      분기에서 쉽게빠져나오려고 던진다...? 그냥 리턴으로 나오면 안되는거냐...그런 언어를 주력으로 삼아본게아니라 잘 모르겠네

      08.27 11:37:55
    • ㅇㅇ(106.102)

      나는 제어를 외부에맡기는 경우에만 트라이캐치를 씀(네트워크 콜 같은것)

      08.27 11:38:14
    • ㅇㅇ(106.102)

      분기에서 빠져나오려고 던지는거면 님 말대로 걍 오용아님?

      08.27 11:38:33
    • fender갤로그로 이동합니다.

      반면에, 예외 상황에서 예외를 던지는 건 위에 다른 사람이 언급한 대로 그게 막 초당 100번 씩 발생하면 코딩 자체를 잘못한 거니까 try-catch 자체를 비판할 거리는 못되고. 오히려 프로그래밍 모델 차원에서 예컨대 함수형에서 예외 분기를 다른 값으로 변환한다던지, 컴포지션을 한다던지 그런 식으로 처리하는게 더 깔끔한 경우가 있으니 그런 면에서 장단점을 따지는 게 더 유효한 이야기 같다.

      08.27 11:38:52
    • fender갤로그로 이동합니다.

      ㅇㅇ 오용 맞음, 근데 가끔 보는 관행이기도 하고. 내가 이해하기로 try-catch 자체가 성능이 느리다는 비판은 그런 오용에 대한 지적으로 더 적합하단 거지, try-catch의 존재 자체가 아니라.

      08.27 11:40:15
    • ㅇㅇ(106.102)

      그럼 첫댓은 그저 인신공격일 뿐이었군...

      08.27 11:40:53
    • ㅇㅇ(106.102)

      그러면 결국 트라이캐치의 성능은 왈가왈부할게 못되네, 다만 표현법이 마음에안들수는 있어도

      08.27 11:41:30
    • fender갤로그로 이동합니다.

      난 그렇게 생각하는데, 이건 내 생각일 뿐이니 다른 주장이 있을 수도 있겠지.

      08.27 11:42:07
    • ㅇㅇ(106.102)
      개추
      08.27 11:44:21
    • 츄럴(164.125)

      파이슨도 철학에서나 그런 소리 하는데 가능하면 안 씁니다..

      08.27 13:03:31
    • 모가지(175.223)

      첫댓은 뭔가 몰라서 평가를 못하겠고 이횽댓글이 나랑 생각하는게 똑같음. 간혹 스택뎁스가 깊어지는거 때문에 트라이캐치를 분기용으로 쓰는 괴랄한 코드를 회사 서비스에서 본적 있는데 다 뜯어고침 - dc App

      08.27 15:28:59
  • ㅇㄹ갤로그로 이동합니다.

    일상적인 상황에서 쓰라고 만든건데 성능이 구려서 못쓰는 상황아님?

    08.27 11:45:37
    • ㅇㅇ(106.102)

      일상적으로 트라이캐치를 도배한다는거...? 뭔가 이상한데

      08.27 11:46:47
    • ㅇㄹ갤로그로 이동합니다.

      stl만봐도 에러핸들링 예외로 하자나

      08.27 11:46:53
    • ㅇㅇ(106.102)

      위에 말했듯이 흐름제어로 쓰는건 오용인부분아닌가...C++의 문화는 좀 다르나?

      08.27 11:47:10
    • ㅇㅇ(106.102)

      에러핸들링 예외로하는건 맞는데 에러가 일상적으로 발생하는건 아니다 이거지, 에러가 발생할때만 느린거잖어

      08.27 11:47:42
    • ㅇㅇ(106.102)

      그리고 프로그램에서 에러가 발생할때는 굉장히 일부잖아, 그게 유저입장에서 병목을 느끼게하는가? 난 아니라고보거든

      08.27 11:48:42
    • ㅇㅇ(106.102)

      느리다는것도 상대적인거고...

      08.27 11:49:09
    • ㅇㅇ(106.102)

      여튼 수치적으로 요약하자면 0.01%정도로 발생하는 에러에대해 조금느리다고 하는건 굳이 상관없지않는가? 이게 내 궁금증이었음

      08.27 11:49:45
    • ㅇㅇ(106.102)

      병목도 비중이 큰 부분을 해결하는거지 트라이캐치가 병목일리가없잖아

      08.27 11:52:25
    • ㅇㄹ갤로그로 이동합니다.

      하나씩만 달아 ㅅㅂ

      08.27 11:53:05
    • ㅇㄹ갤로그로 이동합니다.

      여기가 디코 채팅방인줄아누

      08.27 11:53:32
    • ㅇㅇ(106.102)

      ㅇㅅㅇ;;

      08.27 11:56:13
    • ㅇㄹ갤로그로 이동합니다.

      throw 되는 상황이 애초에 일어나지 않도록 하는 문화가 구린 성능때문이란거임 배열접근마다 트라이 캐치해서 분기하면 욕먹지만 Option같은 타입이 제대로 들어있는 언어들은 일상적으로 하는거임

      08.27 12:02:29
    • ㅇㅇ(106.102)

      오잉? 뭔가 이상한데...배열접근마다 트라이캐치를 하는건 미친놈아닌가

      08.27 12:03:44
    • ㅇㅇ(106.102)

      원래 외부에 제어를 맡기는경우에만 트라이캐치를 쓰는거아님?

      08.27 12:06:17
    • ㅇㄹ갤로그로 이동합니다.

      그러니까 그 문법이랑 성능때문에 그런식으로밖에 못쓰인다고

      08.27 12:07:18
    • ㅇㅇ(106.102)

      아 그러니까 에러처리 존나도배하고싶은데 트라이캐치는 그럴때 쓸수없으니 줫같다...그런건가

      08.27 12:08:55
    • ㅇㄹ갤로그로 이동합니다.

      그래서 땜빵으로 null같은 ㅂㅅ같은거 쓰잖아

      08.27 12:09:28
    • ㅇㅇ(219.250)

      std::vector::at이 std::out_of_range를 던짐

      08.27 12:11:32
  • ㅇㅇ(219.250)

    언어마다, 상황마다, 구현마다 다르지만 일반적으로 느린편
    예외가 발생하지 않더라도, 추가적인 코드를 삽입해야 하고 몇몇 최적화가 불가능할 수 있음
    C++ noexcept가 왜있겠어?

    08.27 12:03:32
    • ㅇㅇ(106.102)

      으음...그 부분이 이해가 안가는건데 이건 C++로 프러덕션 뛰어보는게아니면 모를라나

      08.27 12:06:00
    • ㅇㅇ(219.250)

      그치만 아무런 오류 핸들링도 하지 않는것보다는 낫다고 봄

      08.27 12:06:08
    • ㅇㅇ(106.102)

      인풋을 완벽하게 통제하는게 맞지않나...난 그렇게 생각해와서

      08.27 12:09:19
    • ㅇㅇ(106.102)

      제어가 외부에맡겨져서 통제할수없는 상황인 I/O나 네트워크통신에는 당연히 예외처리해주고

      08.27 12:09:47
    • ㅇㅇ(219.250)

      그건 맞음
      암튼 트라이 캐치로 성능 병목이 생긴다면 그건 프로그래머 잘못임

      08.27 12:12:41
    • ㅇㅇ(106.102)

      그렇구만

      08.27 12:13:22
  • 미쿠좋아하는찐따(121.168)

    파이썬은 예외처리를 걍 일상적인 루틴처럼 막막 써대는데 문제였네용 - dc App

    08.27 12:32:10
    • ㅇㅇ(106.102)

      딥러닝은 모르겠다, 워낙 한번돌리는데 오래걸리고 예측도 잘 안되지않음?

      08.27 12:32:49
    • 미쿠좋아하는찐따(121.168)

      데이터 전처리할때 주로 - dc App

      08.27 12:35:49
    • 미쿠좋아하는찐따(121.168)

      그리고 주피터로 한번쓰고 말 스크립트 쓸 땐 걍 암튼 되면 좋다 이런 느낌이라 - dc App

      08.27 12:37:04
    • fender갤로그로 이동합니다.

      난 파이썬 한 지 얼마 안됐는데, EAFP는 안티패턴이라고 생각함. 성능은 그렇다 치고, 코드 너저분해지고 메서드 이어 쓰거나 하면 각 단계에서 정확하게 무슨 예외가 발생하는지 미리 알아야 하고, 또 진짜 코딩 문제로 예외가 발생했는데 구분이 안갈 수도 있고...

      08.27 14:31:34
1

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
1393 AD [삼성 디지털프라자] 삼성 여름가전 시즌오프(~8/31) 운영자 20/08/21 - -
1510 설문 다이어트 자극 제대로 주는 감량 성공 스타는? 운영자 20/08/25 - -
845 공지 GitHub갤 규1칙 [7] 0xrgb갤로그로 이동합니다. 18.12.15 2756 6
1872 공지 Git 관련 정보 [2] 0xrgb갤로그로 이동합니다. 19.01.29 1918 6
1 공지 github에 관한 이야기를 해주세요. [4] 게으른둔재갤로그로 이동합니다. 18.08.06 1281 0
3 공지 제3자가 명백히 불쾌할 수 있는 허세 및 타당치않은 비난은 지양해주세요. [2] 게으른둔재갤로그로 이동합니다. 18.08.06 1187 0
11566 일반 완장아 이것 좀 봐줘 Nogojiri갤로그로 이동합니다. 06:00 12 0
11565 일반 vmware 16.0이 나오나 봅니다. Network갤로그로 이동합니다. 05:30 18 0
11564 일반 월페 엔진용 웹 ㅇㅇ(14.5) 05:18 25 0
11563 일반 내가 나의 에이전트에게 바라는것 ㅇㅇ(121.182) 03:04 36 0
11562 일반 그래픽스 뉴비 버텍스 쉐이더 질문 ffmpeg(218.39) 02:40 28 0
11561 일반 깃헙 레포에 소스안올리고 뻘글썼는데 [2] ㅇㅇ(221.159) 02:31 60 0
11560 애니짤 이 영상 깊이 어떤거같냐 [1] ㅇㅇ(106.102) 01:45 76 0
11559 애니짤 트라이캐치 걷어내서 성능향상했다는 갤럼 개쩌는듯 [2] ㅇㅇ(106.102) 01:34 88 0
11558 일반 openmp opencl 그만하고 openacc 합시다 [8] ㅇㅇ(175.223) 00:18 85 0
11557 애니짤 깃갤보면 나는 가짜개발자같음 [7] ㅇㅇ(106.102) 08.27 192 1
11556 일반 엔비디아가 선정한 favorite programming language [5] ㅇㅇ(45.87) 08.27 164 1
11555 일반 난 패키지 관리자를 별로 좋아하지 않아 [14] ㅇㅇ(121.132) 08.27 193 0
11554 일반 vscode에서 gtkmm 쓰면 엄청나게 버벅거려서 짜증난다 [13] ㅇㅇ(121.132) 08.27 107 0
11553 일반 PGI 컴파일러 엔비디아 hpc sdk에 들어갔네 [5] ㅇㅇ(212.102) 08.27 101 0
11552 일반 트라이-캐치 오남용의 최고봉은 파이썬일듯 [5] ㅇㅇ(211.109) 08.27 192 0
11551 일반 winget이 윈도우용 pacman이나 apt야? [8] ㅇㅇ(175.223) 08.27 128 0
11550 일반 이런경우엔 어떤식으로 설계하는게 좋음? [3] ㅇㅇ(175.223) 08.27 98 0
11549 일반 일주일동안 버그 찾느라 디버깅했는데 [3] ㅇㅇ(180.182) 08.27 127 0
11548 일반 에러나면 콜백메시지던지고 종료하는 용도로 trycatch썻는데 [9] ㅇㅇ(110.70) 08.27 172 0
11547 일반 C++ stl은 왜 스네이크 스타일이냐? [10] Penguin(125.130) 08.27 203 0
11546 일반 함수에 인자로 자기를 호출한 객체를 넣어야되면 [8] ㅇㅇ(110.70) 08.27 125 0
11545 일반 현대 언어의 집약체.jpg [4] ㅇㅇ(61.77) 08.27 235 1
11544 일반 에러는 처리하라고 있는 거임 [3] 얼음나무갤로그로 이동합니다. 08.27 200 0
11543 일반 Zero-overhead deterministic exceptions [2] 얼음나무갤로그로 이동합니다. 08.27 117 0
11542 일반 아 러스트 마렵다 [2] 석린이(128.134) 08.27 119 0
11541 일반 DNE to EM [7] 다믜갤로그로 이동합니다. 08.27 146 0
11540 일반 댓글보면 진짜 분야가 다양한거 같음 [2] 모가지(175.223) 08.27 171 0
11539 애니짤 말하다보니까 에러란 근본적으로 무엇인가에 대해 궁금해짐 [33] ㅇㅇ(106.102) 08.27 235 0
11538 일반 싱글턴 패턴은 쓰레기임? 장점없음? [7] ㅇㅇ(211.36) 08.27 200 0
11537 일반 Either류의 타입 많이 쓰는 유명한 언어들 뭐있냐 [2] ㅇㅇ(202.14) 08.27 103 0
11536 애니짤 그냥 트라이캐치 사용만하는걸로 전체 성능에 영향을준다면 [13] ㅇㅇ(106.102) 08.27 217 0
11535 일반 에외처리? 그게 뭔가요? ㅇㅇ(220.93) 08.27 94 0
11534 일반 C#는 type union 못씀? [2] ㅇㅇ(118.43) 08.27 105 0
11533 일반 예외는 이런식으로 짜는게 강제됨 [5] ㅇㄹ갤로그로 이동합니다. 08.27 215 0
애니짤 트라이캐치가 느리다는데 궁금한점이 있음 [78] ㅇㅇ(106.102) 08.27 357 0
11531 일반 하스켈 모나드 및 파생들 타입 맞춰가며 동작시키는건 어떻게든 하겠는데 [3] ㅇㅇ(202.14) 08.27 117 0
11530 일반 이거 보면서 C++ delegate 분석 해봐야겠음 노이ㄴ갤로그로 이동합니다. 08.27 120 0
11529 일반 C++로 다익스트라 알고리즘 구현하는데 문제에 봉착함 [6] Dux갤로그로 이동합니다. 08.27 184 0
11528 일반 실패를 다루는 법 [10] ㅇㅇ(219.250) 08.27 512 15
11527 일반 나는 i3 커마 하나도 안 하고 잘 쓰고 있음 ㅇㅇ(61.254) 08.27 104 1
11526 일반 언어는 도구에 불과하다면서 [4] ㅇㅇ(222.100) 08.27 180 0
11524 일반 아니 님들 i3 설정 머 해서 쓰시길래? [3] ㅇㅇ(49.142) 08.27 153 0
11522 일반 i3 처음 깔았던날 [2] ㅇㄹ갤로그로 이동합니다. 08.27 186 0
11521 일반 i3wm는 어떤 데스크탑인가 (리뷰 및 소개) [2] Penguin(125.130) 08.26 195 3
11520 질문 연구실 컴퓨터로 pytorch 공부할 건데 윈도 vs 듀얼부팅 [12] ㅇㅇ(203.238) 08.26 184 0
11519 일반 포크가 왜 있냐 어차피 쥔장에따라 바뀔텐데 [1] bl4ck4rk갤로그로 이동합니다. 08.26 115 0
11518 일반 어플리케이티브 vs 모나드 차이 [8] 다믜갤로그로 이동합니다. 08.26 260 5
11517 일반 인텔컴파일러는 암드cpu에선 못씀? ㅇㅇ(110.70) 08.26 106 0
11516 일반 ICFP 하스켈 파서 콤비네이터 논문 [3] 다믜갤로그로 이동합니다. 08.26 133 0
11515 일반 만자로에서 i3 첫 사용후기 [3] Penguin(125.130) 08.26 155 0
갤러리 내부 검색
전체게시물 정렬 옵션

오른쪽 컨텐츠 영역