คำถามติดแท็ก optimization

3
วิธีการคอมไพล์โดยไม่มีการออปติไมซ์ -O0 โดยใช้ CMake
ฉันใช้Scientific Linux (SL) ฉันกำลังพยายามรวบรวมโครงการที่ใช้ไฟล์ C ++ (.cpp) เป็นจำนวนมาก ในไดเรกทอรีuser/project/Buildฉันป้อนmakeเพื่อคอมไพล์และเชื่อมโยงไฟล์. cpp ทั้งหมด ฉันต้องไปuser/run/แล้วพิมพ์./run.sh values.txt การแก้ปัญหาด้วย GDB ฉันต้องไปuser/runแล้วพิมพ์และเรียกใช้ผมใส่gdb ../project/Build/bin/Project แต่ผมกำลังพยายามที่จะพิมพ์ออกค่าของตัวแปรโดยใช้run -Project INPUT/inputfile.txtp variablename s1 = <value optimized out>แต่ฉันได้รับข้อความ ฉันได้ทำการวิจัยออนไลน์แล้วและดูเหมือนว่าฉันจำเป็นต้องรวบรวมโดยไม่มีการเพิ่มประสิทธิภาพ-O0เพื่อใช้ในการแก้ไข แต่ฉันจะป้อนสิ่งนั้นได้ที่ไหน ในCMakeLists? ถ้าเป็นเช่นนั้น CMakeLists ใด หนึ่งในproject/Buildหรือproject/src/project?

5
บีบอัดไฟล์ขนาดใหญ่จำนวนมากอย่างรวดเร็ว
ฉันมีการสร้างข้อมูลบันทึกข้อมูลประมาณ 200 GB ต่อวันกระจายอยู่ในไฟล์บันทึกต่างๆประมาณ 150 ไฟล์ ฉันมีสคริปต์ที่ย้ายไฟล์ไปยังตำแหน่งชั่วคราวและทำ tar-bz2 ในไดเรกทอรีชั่วคราว ฉันได้รับผลลัพธ์ที่ดีเนื่องจากมีการบีบอัดบันทึก 200 GB ถึงประมาณ 12-15 GB ปัญหาคือมันใช้เวลาตลอดไปในการบีบอัดไฟล์ cronงานทำงานที่ 02:30 ทุกวันและยังทำงานต่อไปจนถึง 5: 00-6: 12:00 มีวิธีปรับปรุงความเร็วของการบีบอัดและทำให้งานเสร็จเร็วขึ้นหรือไม่ ความคิดใด ๆ ไม่ต้องกังวลกับกระบวนการอื่น ๆ ทั้งหมดตำแหน่งที่มีการบีบอัดเกิดขึ้นบนNASและฉันสามารถเรียกใช้ NAS บนVMเฉพาะและเรียกใช้สคริปต์การบีบอัดจากที่นั่น นี่คือการส่งออกของด้านบนสำหรับการอ้างอิง: top - 15:53:50 up 1093 days, 6:36, 1 user, load average: 1.00, 1.05, 1.07 Tasks: 101 total, 3 running, …

1
ksh93 หลีกเลี่ยงการส้อมในการทดแทนคำสั่งได้อย่างไร
ป.ร. ให้ไว้ cmd='fun(){ echo "$@"; }; fun $(fun $(fun hi))' หอยมีแนวโน้มที่จะต้องทำให้ 2 ส้อมเพื่อให้มันเกิดขึ้น strace-f(){ strace -f "$@" 2>&1; }; for sh in dash bash zsh ksh; do printf "$sh\t" ; strace-f $sh -c "$cmd" |grep -e clone -e fork -c; done ยกเว้นkshอย่างกล้าหาญทำให้มันไม่ได้ฟอร์กครั้งเดียว: dash 2 bash 2 zsh 2 ksh 0 …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.