C언어 최적화 옵션 넣었는데 의도한 대로 동작하지 않아서 당황...
어차피 간단한 프로그램이라 넣을 필요도 없는데...
volatile 남발하면 쓰는 의미가 없겠죠?
glibc 몇몇 함수들은 최적화 명시하지 않으면
전처리기에서 아예 빼버리더라구요.
러스트는 이런 면에서 좀 쉽나요?
그리고 DC 계속 글 작성 안 되어서
이 글만 6번째 적고 있는데 왜 이럴까요.
모바일에서 다 실패하고 PC에서 성공했네요.
C언어 최적화 옵션 넣었는데 의도한 대로 동작하지 않아서 당황...
어차피 간단한 프로그램이라 넣을 필요도 없는데...
volatile 남발하면 쓰는 의미가 없겠죠?
glibc 몇몇 함수들은 최적화 명시하지 않으면
전처리기에서 아예 빼버리더라구요.
러스트는 이런 면에서 좀 쉽나요?
그리고 DC 계속 글 작성 안 되어서
이 글만 6번째 적고 있는데 왜 이럴까요.
모바일에서 다 실패하고 PC에서 성공했네요.
애드가드 켜져있으면 글 안써지는거같던데
아무런 확장도 없는데 그러네요... ㅠㅠ 방금 확인했더니 이제 되네요.
근데 또 C최적화 어렵다기엔 자료가 너무 많음
공부만이 답인거군요
최적화얘기 꺼내는거면 임베디드임?
임베디드는 아니고 그냥 바이트코드 해석기요.
최적화라 해봤자 별 거 있나? 가장 확실한건 malloc 안 쓰고 static 대신해서 쓰고, 포인터 대신 배열로 대체할 수 있으면 최대한 하는 정도면 왠만해선 빨라짐. 네이티브 성능 대부분이 메모리버스 대역폭하고 캐시 힛 문제인데
-O 옵션 얘기하는건데 꿀팁 참고할게여
해당 댓글은 삭제되었습니다.
악독하다진짜 ㅋㅋㅋ
최적화 옵션 때문에 코드 깨지면 UB 의심해봐야함
나도 여기에 한표. voltatil을 써야할곳이 아닌데 필요하면 잘못짠거일듯
다시 코드 한번 다 확인햅하야겠어요. 감사합니다
C로 카일 좋음
volatile 은 쓸곳만
만들고 있는거로 봤을때 100% 정렬되지 않은 메모리 접근 때문이라고 생각한다.
구조체 메모리 정렬 말인가요?
그거 말고 이런짓 하는거. char a[100]; int64_t *b=&a[i]; ....
아 i말고 1
설명하면 길어지니 unaligned access로 검색해보세오
C가 극한으로 최저콰하기에는 가장 쉬운 언어입니다만
C언어가 최적화가 어렵다는 말 자체가 너무 어색하게 들림ㅋㅋ