ค้นหาคอขวดขององค์กรโดยใช้ตัวอย่างระบบการกระจายสินค้า ระเบียบวิธีในการประเมินความสามารถในการผลิตขององค์กร การระบุปัญหาคอขวด

มีสถิติดังนี้: 20% ของโค้ดถูกดำเนินการ 80% ของเวลา ความแม่นยำของมัน
แทบจะไม่สอดคล้องกับสถานการณ์ที่แท้จริงอย่างสมบูรณ์ แต่นี่คือความหมายทั่วไป
ค่อนข้างน่าสนใจ: ปรากฎว่าการเพิ่มประสิทธิภาพแอปพลิเคชันทั้งหมดนั้นเป็นงาน
ไร้ความขอบคุณและโง่เขลา และผลลัพธ์ที่แท้จริงจะเกิดขึ้นได้ก็ต่อเมื่อปรับสิ่งเหล่านั้นให้เหมาะสมเท่านั้น
20% ของแอปที่ใช้เวลารันนานที่สุด ยิ่งกว่านั้นการค้นหา 20% นี้ไม่ใช่เรื่องง่าย
และยาก

ในบทความนี้เราจะพูดถึง การทำโปรไฟล์- ตามวิกิพีเดีย
การทำโปรไฟล์นั้นไม่มีอะไรมากไปกว่า "การรวบรวมคุณลักษณะของการทำงานของโปรแกรมเช่น
เป็นเวลาดำเนินการของแต่ละแฟรกเมนต์ จำนวนเงื่อนไขที่ทำนายอย่างถูกต้อง
การเปลี่ยนภาพ จำนวนแคชที่หายไป และอื่นๆ" นี่คือคำแปลเป็นภาษารัสเซีย
หมายถึง "การระบุ คอขวดโปรแกรม" (หรือที่คนแองโกลไฟล์กล่าวว่า
"คอขวด") กล่าวคือ ทุกส่วนของโค้ดที่โปรแกรม
เริ่ม “ลื่น” บังคับให้ผู้ใช้รอ

การทำโปรไฟล์ที่ง่ายที่สุดสามารถทำได้ด้วยมือเปล่า (และฉันจะแสดงด้านล่างนี้
ทำอย่างไร) แต่ควรพึ่งชุมชนที่มีตัวแทนจะดีกว่า
ทุกสิ่งได้ถูกสร้างขึ้นแล้ว เครื่องมือที่จำเป็น- เครื่องมือแรกและเป็นที่นิยมที่สุด
ไปตามชื่อ GNU Profiler (หรือ gprof) มันถูกใช้มานานหลายศตวรรษมา
รหัสโปรไฟล์ที่สร้างโดยคอมไพเลอร์ GCC ประการที่สอง - ความครอบคลุมของ GNU
เครื่องมือทดสอบ (gcov) ซึ่งเป็นยูทิลิตี้สำหรับข้อมูลเพิ่มเติม การวิเคราะห์โดยละเอียดผลผลิต
ชุดที่สามคือชุดเครื่องมือแก้ไขข้อบกพร่องและโปรไฟล์ภายใต้ชื่อทั่วไปของ Google
เครื่องมือประสิทธิภาพ (ตัวย่อ GPT) อันที่สี่คือ Valgrind ซึ่งอย่างน้อยที่สุด
และได้รับการออกแบบมาเพื่อค้นหาข้อผิดพลาดในการทำงานกับหน่วยความจำ แต่มีอยู่ในคลังแสง
ยูทิลิตี้จำนวนหนึ่งสำหรับการวิเคราะห์ประสิทธิภาพของโปรแกรม

มาเริ่มกันตามคาดด้วยคลาสสิก

เครื่องมือสร้างโปรไฟล์ GNU

เครื่องมือสร้างโปรไฟล์ GNU(gprof) เป็นหนึ่งในผู้สร้างโปรไฟล์ที่เก่าแก่ที่สุด
ระบบปฏิบัติการ เช่น UNIX มันเป็นส่วนหนึ่งของแพ็คเกจ gcc และสามารถทำได้
ใช้กับโปรแกรมโปรไฟล์ที่เขียนด้วยการสนับสนุน
ภาษาของพวกเขา (และนี่ไม่ใช่แค่ C/C++ เท่านั้น แต่ยังรวมถึง Objective-C, Ada, Java ด้วย)

gprof ไม่ใช่เครื่องมือสร้างโปรไฟล์ แต่อนุญาตเท่านั้น
แสดงสถิติโปรไฟล์ที่แอปพลิเคชันสะสมในระหว่างนั้น
งาน (ดำเนินไปโดยไม่บอก ไม่มีแอปพลิเคชันใดทำเช่นนี้ตามค่าเริ่มต้น
แต่สามารถเริ่มต้นได้หากคุณสร้างโปรแกรมด้วยอาร์กิวเมนต์ "-pg")

มาดูกันว่าสิ่งนี้ทำงานอย่างไรในสภาวะจริง ที่จะรู้สึกทุกอย่าง
ข้อดีของ gprof เราจะไม่นำไปใช้กับนามธรรมหรือของเทียม
สร้างแอปพลิเคชั่นขึ้นมาแต่เป็นของจริงที่ใช้ทุกวัน อนุญาต
มันจะเป็น gzip

เราได้รับและแกะแหล่งที่มาของผู้จัดเก็บ:

$ wget www.gzip.org/gzip-1.3.3.tar.gz
$ tar -xzf gzip-1.3.3.tar.gz
$ ซีดี gzip-1.3.3

ติดตั้งเครื่องมือที่จำเป็นสำหรับการประกอบ (ใน Ubuntu เป็นอันเสร็จสิ้น
ผ่านการติดตั้งเมตาแพ็คเกจที่จำเป็นสำหรับการสร้าง):

$ sudo apt-get ติดตั้ง build-essential

เราเปิดตัวตัวกำหนดค่าบิลด์โดยส่งอาร์กิวเมนต์ CFLAGS ไปยังตัวแปรสภาพแวดล้อม
"-pg":

$CFLAGS="-pg" ./configure

กำลังรวบรวมโปรแกรม:

ตอนนี้เรามีไบนารี gzip ที่สามารถเก็บสถิติของมันได้
การดำเนินการ แต่ละครั้งที่เปิดตัว จะมีการสร้างไฟล์ gmon.out ตามมาด้วย:


$ ls -l gmon.out
-rw-r--r-- 1 j1m j1m 24406 19-11-2553 14:47 gmon.out

ไฟล์นี้ไม่ได้ตั้งใจให้มนุษย์อ่าน แต่สามารถใช้ได้
การสร้างรายงานการดำเนินการโดยละเอียด:

$ gprof ./gzip gmon.out > gzip-profile.txt

ส่วนที่สำคัญที่สุดของไฟล์ผลลัพธ์จะแสดงอยู่ในภาพหน้าจอ

แต่ละบรรทัดคือสถิติของการดำเนินการของฟังก์ชันหนึ่ง คอลัมน์จะแตกต่างกัน
ตัวชี้วัด เราสนใจคอลัมน์แรก สาม สี่ และเจ็ด พวกเขา
แสดงข้อมูลเกี่ยวกับระยะเวลาทั้งหมดที่ใช้ในการดำเนินการ
ฟังก์ชัน (คอลัมน์แรกเป็นเปอร์เซ็นต์ คอลัมน์ที่สามเป็นวินาที) ปริมาณ
โทรและชื่อ

เรามาลองวิเคราะห์รายงานกันดีกว่า อันดับแรกในรายการคือฟังก์ชันยุบ
ซึ่งถูกเรียกเพียงครั้งเดียว แต่ "กลืนกิน" 29% ของเวลาดำเนินการทั้งหมด
โปรแกรม นี่คือการนำอัลกอริธึมการบีบอัดมาใช้และถ้าเราต้องเผชิญกับ
งานเพิ่มประสิทธิภาพ gzip คือจุดที่เราควรเริ่มต้น 22% ของเวลา
ใช้เพื่อดำเนินการฟังก์ชัน longest_match แต่ก็ไม่เหมือนกับการยุบเลย
ถูกเรียกมากถึง 450,613,081 ครั้ง ดังนั้นจึงมีการเรียกใช้ฟังก์ชันแต่ละครั้ง
ระยะเวลาอันไม่มีนัยสำคัญ นี่คือตัวเลือกที่สองสำหรับการเพิ่มประสิทธิภาพ การทำงาน
fill_window ใช้เวลา 13% ของเวลาทั้งหมดและถูกเรียกว่า "เท่านั้น" 22,180 ครั้ง
บางทีในกรณีนี้ การเพิ่มประสิทธิภาพอาจให้ผลลัพธ์ได้

โดยเลื่อนดูไฟล์รายงานไปตรงกลาง (อีกอย่าง ทันทีหลังตารางจะมีรายละเอียด)
ข้อมูลเกี่ยวกับคอลัมน์ทั้งหมดซึ่งสะดวกมาก) เราจะไปถึงสิ่งที่เรียกว่า
"กราฟการโทร" เป็นตารางที่แบ่งเป็นบันทึก
แยกจากกันด้วยเส้นประ (เครื่องหมายลบซ้ำ) แต่ละ
บันทึกประกอบด้วยหลายบรรทัด ในขณะที่บรรทัดที่สอง ตรงกันข้ามกับสามัญสำนึก
ความหมายเรียกว่า "หลัก" และอธิบายฟังก์ชันที่บันทึกทุ่มเทไว้
บรรทัดด้านบนคือคำอธิบายของฟังก์ชันที่เรียกใช้ และด้านล่างคือคำอธิบายของฟังก์ชันที่ถูกเรียก
ถึงเธอ

คอลัมน์ประกอบด้วยข้อมูลต่อไปนี้ (จากซ้ายไปขวา): ดัชนี (ดัชนีคือ
เฉพาะในบรรทัดหลักและในความเป็นจริงไม่ได้มีความหมายอะไรเลย) เปอร์เซ็นต์ของเวลา
ซึ่งใช้ในการดำเนินการฟังก์ชัน (% เวลา) ระยะเวลาที่ใช้ไป
สำหรับการดำเนินการในไม่กี่วินาที (ตนเอง) ระยะเวลาที่ใช้ไป
การดำเนินการของฟังก์ชันและฟังก์ชันทั้งหมดที่เรียกโดยมัน (ลูก ๆ ); จำนวนการโทร
ฟังก์ชั่น (เรียกว่า) และชื่อของมัน (ชื่อ)

กราฟการโทรมีประโยชน์มากเมื่อพูดถึงการเพิ่มประสิทธิภาพ
รหัสของคนอื่น ไม่เพียงมองเห็นปัญหาคอขวดของโปรแกรมเท่านั้น แต่ยังมองเห็นตรรกะทั้งหมดด้วย
งานของเธอซึ่งอาจไม่ชัดเจนเมื่อศึกษาซอร์สโค้ด

เครื่องมือทดสอบความครอบคลุมของ GNU

นอกจาก gprof แล้ว คอมไพเลอร์ GCC ยังมีเครื่องมืออีกหนึ่งอย่างอีกด้วย
การทำโปรไฟล์ซึ่งช่วยให้คุณได้รับรายงานโดยละเอียดเพิ่มเติมเกี่ยวกับการดำเนินการ
การใช้งาน ยูทิลิตี้นี้เรียกว่า gcov และได้รับการออกแบบมาเพื่อสร้าง
เรียกว่าซอร์สโค้ดที่มีคำอธิบายประกอบซึ่งจะปรากฏถัดจากแต่ละบรรทัด
มีจำนวนการดำเนินการของมัน นี่อาจจำเป็นสำหรับการเจาะลึกลงไป
ศึกษาปัญหาการใช้งาน เมื่อพบฟังก์ชันที่รับผิดชอบต่อ “เบรก” และ
แก่นแท้ของปัญหายังไม่ชัดเจน (เช่น ไม่ชัดเจนว่าบรรทัดไหน
มีหน้าที่รับผิดชอบในการวนซ้ำที่ซ้อนกันซ้ำๆ ภายในฟังก์ชันแบบยาว
ประสิทธิภาพลดลงผิดปกติ)

Gcov ไม่สามารถพึ่งพาสถิติที่สร้างโดยแอปพลิเคชันเมื่อสร้างด้วย
ด้วยแฟล็ก "-pg" และจำเป็นต้องสร้างใหม่ด้วยแฟล็ก "-fprofile-arcs" และ "-ftest-coverage":

$CFLAGS="-fprofile-arcs -ftest-ครอบคลุม"
./configure && ทำ

$ ./gzip ~/ubuntu-10.10-desktop-i386.iso

สำหรับไฟล์ซอร์สโค้ดแต่ละไฟล์ กราฟการโทรจะถูกสร้างขึ้นตาม
ซึ่งสามารถสร้างคำอธิบายประกอบที่มนุษย์สามารถอ่านได้
แหล่งที่มา:

$ gcov deflate.c
ไฟล์ "deflate.c"
บรรทัดที่ดำเนินการ:76.98% ของ 139
deflate.c: กำลังสร้าง "deflate.c.gcov"

ไฟล์ผลลัพธ์ประกอบด้วยสามคอลัมน์: จำนวนการดำเนินการ
บรรทัด หมายเลขบรรทัด และบรรทัดนั้นเอง นอกจากนี้ สำหรับบรรทัดที่ไม่มีโค้ด ให้เข้าไป
คอลัมน์แรกจะมีเครื่องหมายลบ และสำหรับบรรทัดที่ไม่เคยถูกดำเนินการ -
ลำดับของมีคม: #####

เครื่องมือประสิทธิภาพของ Google

เครื่องมือประสิทธิภาพของ Google(ตัวย่อ GPT) เป็นการพัฒนาโดยพนักงานของ Google
ออกแบบมาเพื่อค้นหาหน่วยความจำรั่วและปัญหาคอขวดของแอปพลิเคชัน เช่นเดียวกับจีโปรฟ
GPT ไม่ใช่โปรแกรมภายนอกแอปพลิเคชันที่กำลังทดสอบและ
บังคับให้เขาเก็บสถิติผลงานของเขาอย่างอิสระ อย่างไรก็ตาม
เพื่อจุดประสงค์นี้ ไม่ใช่รหัสที่ฝังอยู่ในขั้นตอนการประกอบแอปพลิเคชันที่ใช้ แต่เป็น
ไลบรารี่ที่สามารถเชื่อมโยงกับแอปพลิเคชัน ณ เวลาสร้างหรือ
เชื่อมต่อเมื่อเริ่มต้น

โดยรวมแล้ว มีไลบรารีปลั๊กอินสองไลบรารีสำหรับนักพัฒนา: tcmalloc (ซึ่ง
ตามที่ผู้เขียน GPT ระบุว่าเป็นการดำเนินการที่รวดเร็วที่สุดในโลก
ฟังก์ชั่น malloc และยังช่วยให้การวิเคราะห์วิธีการหน่วยความจำ
ใช้ไป จัดสรร และไหล) และตัวสร้างโปรไฟล์ที่สร้างรายงานการดำเนินการ
โปรแกรมเช่น gprof. ชุดนี้ยังรวมถึงยูทิลิตี้ pprof
ออกแบบมาเพื่อการวิเคราะห์และการแสดงข้อมูลที่สะสมด้วยภาพ

ซอร์สโค้ด รวมถึงแพ็คเกจ rpm และ deb สำหรับทั้งชุดนี้มีอยู่ที่
หน้าอย่างเป็นทางการ (code.google.com/p/google-perftools) แต่ฉันจะไม่ทำ
แนะนำให้กังวลกับการติดตั้งด้วยตนเอง เนื่องจากมีชุดอุปกรณ์มาให้
ที่เก็บ Fedora และ Ubuntu มาตรฐาน และสามารถติดตั้งได้ในที่เดียว
สั่งการ:

$ sudo apt-get ติดตั้ง google-perftools \libgoogle-perftools0
libgoogle-perftools-dev

$ LD_PRELOAD=/usr/lib/libprofiler.so.0.0.0 \
CPUPROFILE=gzip-profile.log ./gzip \
/home/j1m/ubuntu-10.10-desktop-i386.iso

อย่างไรก็ตาม ชาว Google เองไม่แนะนำให้ใช้วิธีนี้ (เห็นได้ชัดว่าเกิดจากปัญหา)
ด้วยโปรแกรมที่เขียนด้วยภาษา C++) แนะนำให้ทำการเชื่อมโยงไลบรารีระหว่างนั้น
แอสเซมบลี เอาล่ะอย่าเถียงกัน

สำหรับการทดลอง ลองใช้ gzip เดิมแล้วสร้างใหม่อีกครั้ง
การเชื่อมโยงไบนารี่ด้วย ห้องสมุดที่ต้องการ:

$ซีดี ~/gzip-1.3.3
$ ทำความสะอาด
$./configure
$ LDFLAGS="-lprofiler" ./configure && make

ตอนนี้ gzip พร้อมที่จะบันทึกการดำเนินการอีกครั้ง แต่จะไม่ทำเช่นนั้น
ค่าเริ่มต้น. หากต้องการเปิดใช้งานตัวสร้างโปรไฟล์ คุณจะต้องประกาศตัวแปร
CPUPFOFILE และกำหนดเส้นทางให้กับไฟล์โปรไฟล์:

$ CPUPROFILE=gzip-cpu-profile.log ./gzip \
~/ubuntu-10.10-desktop-i386.iso
โปรไฟล์: การขัดจังหวะ/การขับไล่/ไบต์ = 4696/946/91976

เช่นเดียวกับ gprof รายงานผลลัพธ์จะอยู่ในรูปแบบไบนารี่และสามารถเป็นได้
อ่านอย่างเดียวโดยใช้ยูทิลิตี้พิเศษ ใน GPT มีบทบาทโดย
perl script pprof (ใน Ubuntu เพื่อหลีกเลี่ยงความสับสนกับยูทิลิตี้อื่นที่มีชื่อเดียวกัน
เปลี่ยนชื่อเป็น google-pprof) ซึ่งสามารถสร้างได้ไม่เพียงแต่ตารางและ
แหล่งที่มาที่มีคำอธิบายประกอบในรูปแบบของ gcov แต่ยังรวมถึงกราฟการโทรแบบภาพด้วย ทั้งหมด
ยูทิลิตีนี้มีเอาต์พุต 11 ประเภท ซึ่งแต่ละประเภทได้รับการกำหนดไว้
อาร์กิวเมนต์บรรทัดคำสั่งที่เกี่ยวข้องคือ:

  1. ข้อความ (--ข้อความ) - ตารางที่คล้ายกับเอาต์พุต gprof
  2. Callgrind (--callgrind) - เอาต์พุตในรูปแบบที่เข้ากันได้กับยูทิลิตี้ kcachegrind (จากแพ็คเกจ valgrind)
  3. กราฟิก (--gv) - กราฟการโทรปรากฏบนหน้าจอทันที
  4. รายการ (--รายการ= ) - รายการคำอธิบายประกอบของฟังก์ชันที่ระบุ
  5. รายการถอดประกอบ (--disasm= ) - มีคำอธิบายประกอบ
    รายการแยกส่วนของฟังก์ชันที่ระบุ
  6. Symbolic (--สัญลักษณ์) - รายการชื่อสัญลักษณ์ที่ถอดรหัสแล้ว
  7. ไฟล์กราฟิก (--dot, --ps, --pdf, --gif) - กราฟการโทร บันทึกแล้ว
    ยื่น;
  8. Raw (--raw) - การเตรียมไฟล์โปรไฟล์ไบนารีสำหรับการส่งผ่านเครือข่าย
    (บันทึกโดยใช้อักขระที่พิมพ์ได้)

สิ่งที่น่าสนใจที่สุดสำหรับเราคือข้อความ ("--ข้อความ") และกราฟิก
("--gv") ประเภทการโทร มีเพียงพวกเขาเท่านั้นที่สามารถให้ข้อมูลที่ครบถ้วนเกี่ยวกับการใช้งานได้
แอปพลิเคชันและพื้นที่ปัญหาทั้งหมด เอาต์พุตข้อความถูกสร้างขึ้นดังนี้
ทาง:

$ google-pprof --text ./gzip gzip-cpu-profile.log

ดังที่คุณเห็นในภาพหน้าจอ ผลลัพธ์คือตารางที่แสดงรายการทั้งหมด
ฟังก์ชั่นและต้นทุนสำหรับการนำไปใช้งาน มองแวบแรกก็ดูคล้ายกันมาก
ตารางที่สร้างโดยยูทิลิตี้ gprof แต่ไม่ใช่กรณีนี้ เป็นคนยุติธรรม
ไลบรารี GPT ไม่สามารถเก็บสถิติการทำงานของโปรแกรมไว้ในรายละเอียดเดียวกันได้
และโค้ดที่ฝังลงในแอปพลิเคชันโดยตรงทำงานอย่างไร ดังนั้นแทนที่จะ
บันทึกข้อเท็จจริงทั้งหมดของการโทรและออกจากฟังก์ชัน (พฤติกรรมของโปรแกรมที่คอมไพล์ด้วย
ตั้งค่าสถานะ "-pg") GPT ใช้วิธีการที่เรียกว่าการสุ่มตัวอย่าง หนึ่งร้อยครั้งต่อวินาที
ห้องสมุดเปิดใช้งานฟังก์ชั่นพิเศษที่มีหน้าที่รวบรวมข้อมูล
ณ จุดใด ช่วงเวลาปัจจุบันโปรแกรมถูกดำเนินการและบันทึก
ข้อมูลนี้ลงในบัฟเฟอร์ เมื่อเสร็จสิ้นโปรแกรม ก
ไฟล์โปรไฟล์ถูกเขียนลงดิสก์

นี่คือสาเหตุที่เอาต์พุตของ pprof ไม่มีข้อมูลเกี่ยวกับจำนวนครั้งที่ฟังก์ชันถูกดำเนินการ
ถูกเรียกในขณะที่โปรแกรมกำลังทำงานอยู่ หรือใช้เวลาไปกี่เปอร์เซ็นต์
การดำเนินการ สำหรับแต่ละฟังก์ชัน จะมีการระบุจำนวนการตรวจสอบแทน ในหน่วย
ซึ่งพบว่าขณะนี้กำลังดำเนินโครงการอยู่
การดำเนินการของฟังก์ชันนี้ ดังนั้นจำนวนเช็คที่กำหนดให้แต่ละครั้ง
ฟังก์ชันสามารถนับได้อย่างปลอดภัยเป็นเวลารวมของการดำเนินการ

ในแง่อื่นๆ ทั้งหมด ตารางจะมีลักษณะคล้ายกับผลลัพธ์ของ gprof: by function on อย่างยิ่ง
แถว เลขชี้กำลังต่อคอลัมน์ มีทั้งหมดหกคอลัมน์:

  1. จำนวนการตรวจสอบสำหรับฟังก์ชันนี้
  2. เปอร์เซ็นต์ของการตรวจสอบฟังก์ชันโปรแกรมอื่นๆ ทั้งหมด
  3. จำนวนการตรวจสอบสำหรับฟังก์ชันนี้และฟังก์ชันสืบทอดทั้งหมด
  4. จำนวนเดียวกันกับเปอร์เซ็นต์ของจำนวนเช็คทั้งหมด
  5. ชื่อฟังก์ชัน

ในตอนแรก วิธีการวัดเวลาดำเนินการนี้ดูเหมือนจะมากเกินไป
ไม่ถูกต้อง แต่ถ้าคุณเปรียบเทียบตารางที่ได้รับโดยใช้ gprof กับตาราง
เห็นได้ชัดว่าพวกเขาแสดงภาพเดียวกัน นอกจากนี้ GPT
ช่วยให้คุณสามารถเปลี่ยนจำนวนการตรวจสอบต่อวินาทีโดยใช้ตัวแปร
สภาพแวดล้อม CPUPROFILE_FREQUENCY ดังนั้นความแม่นยำจึงเพิ่มขึ้นได้สิบถึงหนึ่งร้อย
หรือพันครั้งหากสถานการณ์ต้องการ (เช่น หากจำเป็น
โปรไฟล์การดำเนินการของโปรแกรมขนาดเล็กมาก)

ข้อได้เปรียบที่ไม่ต้องสงสัยของ GPT เหนือ gprof คือความสามารถในการเป็นตัวแทน
ข้อมูลใน รูปแบบกราฟิก- หากต้องการเปิดใช้งานฟังก์ชัน pprof นี้ คุณควรทำ
รันด้วยแฟล็ก "--gv" (ยังไงก็ตาม เพื่อแสดงกราฟที่จะใช้
ยูทิลิตี้ที่มีชื่อเดียวกัน):

$ google-pprof --gv ./gzip gzip-cpu-profile.log

กราฟการเรียกใช้ฟังก์ชันที่สร้างขึ้นอันเป็นผลมาจากการเรียกใช้ฟังก์ชันนี้เป็นอย่างมาก
มองเห็นและเข้าใจและศึกษาได้ง่ายกว่าที่คล้ายกันมาก
กราฟข้อความที่สร้างโดยคำสั่ง gprof ชื่อและสถิติประสิทธิภาพของแต่ละรายการ
ฟังก์ชันจะวางอยู่ในรูปสี่เหลี่ยมซึ่งมีขนาดเป็นสัดส่วนโดยตรง
ระยะเวลาที่ใช้ในการทำหน้าที่ ภายในสี่เหลี่ยม
โพสต์ข้อมูลเกี่ยวกับระยะเวลาที่ใช้ในการรันฟังก์ชันและฟังก์ชันของมัน
ผู้สืบทอด (เวลาวัดด้วยเช็ค) การเชื่อมต่อระหว่างสี่เหลี่ยมแสดงให้เห็น
ตามลำดับการเรียกใช้ฟังก์ชันและ ค่าตัวเลขระบุถัดจากการเชื่อมต่อ -
ตลอดระยะเวลาการดำเนินการของฟังก์ชันที่ถูกเรียกและฟังก์ชันสืบทอดทั้งหมด

ข้อดีอีกประการของ GPT ก็คือความสามารถในการใช้ระดับต่างๆ
รายละเอียดสำหรับเอาต์พุตข้อมูล ทำให้ผู้ใช้สามารถเลือกหน่วยได้เอง
บดขยี้ ตามค่าเริ่มต้น ฟังก์ชันจะถูกใช้เป็นหน่วยดังกล่าว
เอาต์พุต pprof ใดๆ จะถูกแบ่งตามตรรกะเป็นฟังก์ชัน อย่างไรก็ตามหากต้องการเช่น
หน่วยบดสามารถใช้บรรทัดซอร์สโค้ดได้ (อาร์กิวเมนต์ "--lines")
ไฟล์ ("--ไฟล์") หรือแม้แต่ที่อยู่หน่วยความจำกายภาพ ("--ที่อยู่") ขอบคุณ
ฟังก์ชัน GPT นี้สะดวกในการใช้ค้นหาจุดคอขวด
แอปพลิเคชันขนาดใหญ่ เมื่อคุณวิเคราะห์ประสิทธิภาพในระดับแรก
แยกไฟล์ จากนั้นไปที่ฟังก์ชั่นและค้นหาปัญหาในที่สุด
ตำแหน่งที่ระดับซอร์สโค้ดหรือที่อยู่หน่วยความจำ

และสิ่งสุดท้ายอย่างหนึ่ง ดังที่ได้กล่าวไปแล้ว GPT ไม่เพียงแต่เป็นผู้สร้างโปรไฟล์ที่ดีเท่านั้น
แต่ยังเป็นเครื่องมือในการค้นหาหน่วยความจำรั่วด้วยดังนั้นจึงมีอย่างหนึ่งอย่างมาก
ผลข้างเคียงที่ดีในรูปแบบของความสามารถในการวิเคราะห์การใช้หน่วยความจำ
แอปพลิเคชัน. เมื่อต้องการทำเช่นนี้ แอปพลิเคชันต้องถูกสร้างหรือรันโดยได้รับการสนับสนุน
tcmalloc และตัวแปร HEAPPROFILE มีที่อยู่สำหรับการวางตำแหน่ง
ไฟล์โปรไฟล์ ตัวอย่างเช่น:

$ LD_PRELOAD=/usr/lib/libtcmalloc.so.0.0.0 \
HEAPPROFILE=gzip-heap-profile.log \
./gzip ~/ubuntu-10.10-desktop-i386.iso
เริ่มติดตามฮีป
การดัมพ์โปรไฟล์ฮีปไปที่ gzip-heap-profile.log.0001.heap (ออก)

ไฟล์ผลลัพธ์จะมีส่วนท้าย 0000.heap ต่อท้าย หากเปิดไว้
ไฟล์นี้ไปยังยูทิลิตี้ pprof และระบุการตั้งค่าสถานะ "--ข้อความ" ก็จะแสดงตาราง
ฟังก์ชั่นและระดับการใช้หน่วยความจำของแต่ละรายการ คอลัมน์หมายถึงสิ่งเดียวกัน
เช่นเดียวกับในกรณีของการทำโปรไฟล์แบบธรรมดา ยกเว้นว่าแทนที่จะเป็น
จำนวนเช็คและเปอร์เซ็นต์ ตอนนี้ตารางประกอบด้วยตัวเลขแล้ว
การใช้หน่วยความจำและเปอร์เซ็นต์ของการใช้หน่วยความจำทั้งหมด

หากจำเป็น สามารถรับข้อมูลนี้ในรูปแบบกราฟิกได้เช่นกัน
เปลี่ยนหน่วยบด ห้องสมุดสามารถปรับแต่งการใช้งานต่างๆ
ตัวแปรสภาพแวดล้อม ซึ่งมีประโยชน์มากที่สุดเรียกว่า HEAP_PROFILE_MMAP
เปิดใช้งานการสร้างโปรไฟล์สำหรับการเรียกระบบ mmap (GPT ตามค่าเริ่มต้น
รวบรวมสถิติสำหรับการโทรไปยัง malloc, calloc, realloc และใหม่เท่านั้น)

คำไม่กี่คำเกี่ยวกับ Valgrind

ในส่วนสุดท้ายของบทความ เราจะดูวิธีการใช้งานโดยย่อ
เครื่องมือ วาลกรินด์สำหรับการสร้างโปรไฟล์แอปพลิเคชัน วาลกรินด์มีพลังมาก
ดีบักเกอร์หน่วยความจำที่สามารถค้นหาข้อผิดพลาดของหน่วยความจำเช่น
ยูทิลิตี้อื่น ๆ ก็ไม่สงสัยด้วยซ้ำ มันมีสถาปัตยกรรมแบบโมดูลาร์นั่นคือ
เมื่อเวลาผ่านไปทำให้สามารถรับปลั๊กอินหลายตัวที่ไม่เกี่ยวข้องได้
โดยตรงในการดีบัก มีปลั๊กอินดังกล่าวทั้งหมดสามรายการ:

  1. Cachegrind - ช่วยให้คุณรวบรวมสถิติการเข้าชมข้อมูลและ
    คำแนะนำโปรแกรมลงในแคชของระดับที่หนึ่งและสองของโปรเซสเซอร์ (ทรงพลังและ
    เครื่องมือที่ซับซ้อนซึ่งมีประโยชน์เมื่อทำการโปรไฟล์
    รหัสระดับต่ำ)
  2. Massif เป็นตัวสร้างโปรไฟล์ฮีปที่มีลักษณะการทำงานคล้ายกับแพ็คเกจ GPT
  3. Callgrind เป็นตัวสร้างโปรไฟล์เหมือนกับใน gprof และ GPT

ตามค่าเริ่มต้น Valgrind จะใช้ memcheck เป็นปลั๊กอินหลัก
(ดีบักเกอร์หน่วยความจำ) ดังนั้นหากต้องการรันในโหมดโปรไฟล์ที่คุณต้องการ
ระบุปลั๊กอินที่ต้องการด้วยตนเอง ตัวอย่างเช่น:

$ valgrind --tool=callgrind ./program

หลังจากนี้จะมีไฟล์ชื่อ
โปรแกรม callgrind.out.PID ซึ่งสามารถวิเคราะห์ได้โดยใช้ยูทิลิตี้
callgrind_annotate หรือโปรแกรมกราฟิก kcachegrind (ติดตั้งแล้ว
แยกกัน) ฉันจะไม่อธิบายรูปแบบของข้อมูลที่สร้างโดยโปรแกรมเหล่านี้
(นำเสนอได้ดีในหน้าคนที่มีชื่อเดียวกัน) ฉันจะพูดแบบนั้นเท่านั้น
จะดีกว่าถ้าเรียกใช้ callgrind_annotate ด้วยแฟล็ก "--auto" เพื่อให้สามารถดำเนินการได้
ค้นหาไฟล์ต้นฉบับของโปรแกรมด้วยตัวเอง

ในการวิเคราะห์การใช้หน่วยความจำ ควรรัน Valgrind ด้วยอาร์กิวเมนต์ "--tool=massif"
หลังจากนั้นไฟล์โปรแกรม Massif.out.PID จะปรากฏในไดเร็กทอรีปัจจุบันซึ่ง
สามารถวิเคราะห์ได้โดยใช้ยูทิลิตี้ ms_print ต่างจากเธอ
สามารถแสดงข้อมูลได้ไม่เพียงแต่ในรูปแบบตารางมาตรฐานเท่านั้น แต่ยังสร้างได้อีกด้วย
กราฟิก ASCII-Art ที่สวยงาม

ข้อสรุป

เครื่องมือเช่น gprof, gcov และ GPT ช่วยให้สามารถวิเคราะห์ประสิทธิภาพได้
และระบุปัญหาคอขวดทั้งหมดจนถึงโปรเซสเซอร์แต่ละตัว
คำแนะนำ และด้วยการเชื่อมต่อ Valgrind กับกระบวนการสร้างโปรไฟล์ คุณสามารถบรรลุผลสำเร็จได้
ผลลัพธ์ที่น่าอัศจรรย์

ข้อมูล

ตามค่าเริ่มต้น gprof จะไม่ส่งออกข้อมูลโปรไฟล์สำหรับฟังก์ชัน
libc แต่สถานการณ์สามารถแก้ไขได้โดยการติดตั้งแพ็คเกจ libc6-prof และ
รวบรวมการทดสอบด้วยไลบรารี libc_p: "export LD_FLAGS="-lc_p""

คุณสามารถเปิดใช้งานตัวสร้างโปรไฟล์ GPT ได้ไม่เพียงแค่ใช้ตัวแปรสภาพแวดล้อมเท่านั้น
CPUPROFILE แต่ยังโดยการวางกรอบส่วนโค้ดที่ทดสอบด้วยฟังก์ชัน ProfilerStart()
และ ProfilerStop() ซึ่งประกาศไว้ใน google/profiler.h

คำเตือน

เนื่องจากข้อกำหนดด้านความปลอดภัย GPT จะไม่ทำงานกับแอปพลิเคชันด้วย
ชุดบิต SUID

  • 17. การวิเคราะห์ปัญหาคอขวดที่เกิดขึ้นในองค์กร
  • 18. วิธีการคำนวณเงินลงทุน
  • 19.การคำนวณผลการผลิตระยะสั้น
  • 21. ค่าตอบแทนคอมมิชชั่นสำหรับตัวแทนขายตามจำนวนเงินความคุ้มครอง
  • 22.แก้วน้ำคุณภาพ.
  • 23. การวิเคราะห์ส่วนลด
  • 24. การวิเคราะห์พื้นที่การขาย
  • 25. การวิเคราะห์ต้นทุนการทำงาน
  • 26. การวิเคราะห์เอ็กซ์ซีส
  • 27. ผลิตเอง - วัสดุภายนอก
  • 28. เส้นโค้งประสบการณ์
  • 29. การวิเคราะห์การแข่งขัน
  • 30. โลจิสติกส์
  • 31. การวิเคราะห์พอร์ตโฟลิโอ
  • 33. เส้นโค้งวงจรชีวิตผลิตภัณฑ์
  • 34. การวิเคราะห์จุดแข็งและจุดอ่อนขององค์กร
  • 36. การพัฒนาสถานการณ์
  • 37. ลำดับขั้นตอนของการออกแบบกระบวนการควบคุมในองค์กร
  • 38. ขั้นตอนองค์กรและการดำเนินงานของการออกแบบกระบวนการควบคุม
  • 40. ปัจจัยทางสังคมและจิตวิทยาของการต่อต้านแนวคิดการจัดการใหม่ในองค์กร: การต่อต้านแบบกลุ่ม
  • 41. งานของผู้ควบคุมในองค์กร
  • 42. ข้อกำหนดสำหรับทรัพย์สินทางวิชาชีพและส่วนบุคคลของผู้ควบคุม
  • 43. ตัวอย่างบทบาทหน้าที่หลักของคอนโทรลเลอร์
  • 46. ​​​​ประเภทองค์กรควบคุมหลัก
  • 47. ตัวเลือกสำหรับการวางตำแหน่งบริการควบคุม
  • 48. ข้อกำหนดเบื้องต้นสำหรับการจัดบริการควบคุมในองค์กร
  • 49. การควบคุมแบบรวมศูนย์และกระจายอำนาจ
  • 50. บทบาทและภารกิจของผู้ควบคุมหลักในองค์กร
  • 51. แนวคิดการควบคุมที่เกี่ยวข้องกับปัญหาทางบัญชี
  • 52. สถานที่ (บทบาทและงาน) ของผู้ควบคุมการกระจายอำนาจในโครงสร้างขององค์กร
  • 53. ข้อดีและข้อเสียของการสร้างบริการควบคุมที่เป็นอิสระในองค์กร
  • 54. ความขัดแย้งระหว่างผู้ควบคุมและผู้จัดการ: สาระสำคัญและประเภทของความขัดแย้ง
  • 55. แนวทางการทำงานในการรวบรวมข้อมูลเพื่อการตัดสินใจของฝ่ายบริหาร: ข้อเสียและข้อดี
  • 56. การประมวลผลข้อมูลอัตโนมัติเมื่อแนะนำแนวคิดการควบคุม
  • ระบบอัตโนมัติ
  • 58. พื้นที่ข้อมูลเดียว: สาระสำคัญ, ความจำเป็นของการสร้าง (เงื่อนไข), ความเป็นไปได้
  • 59. ระบบสารสนเทศการจัดการแบบบูรณาการเป็นเครื่องมือการจัดการโดยใช้คอมพิวเตอร์ บล็อกหลักของระบบและหน้าที่ของมัน
  • 61. Eis: วัตถุประสงค์ลักษณะสำคัญ
  • 62. สมมติฐานที่ผิดพลาดเมื่อออกแบบระบบสารสนเทศ
  • 63. การรื้อระบบข้อมูล: สาระสำคัญ ขั้นตอนหลัก
  • 65. ความหมายทางเศรษฐกิจทั่วไปและการบริหารจัดการเฉพาะของการวางแผนกิจกรรมของบริษัท
  • 17. การวิเคราะห์ปัญหาคอขวดที่เกิดขึ้นในองค์กร

    หน้าที่ของการวางแผนการปฏิบัติงานของโปรแกรมการผลิตคือการกำหนดช่วงและปริมาณของผลิตภัณฑ์ เมื่อต้องการทำเช่นนี้ ต้องทราบข้อมูลต่อไปนี้:

    1) ราคาสินค้า;

    2) ต้นทุนการผลิต

    4) กำลังการผลิตที่มีอยู่

    ปัญหาการวางแผนโปรแกรมการผลิต

    พิจารณาจากประเภทและจำนวนคอขวดในการผลิตเป็นหลัก นอกจากนี้ กระบวนการทางเทคโนโลยีทางเลือกที่เป็นไปได้ก็มีความสำคัญเช่นกัน เรากำลังพูดถึงอุปกรณ์ที่ติดตั้งและความเข้มข้นของการใช้งานในกระบวนการผลิต

    มีวิธีต่างๆ ในการวางแผนโปรแกรมการผลิตได้

    มีแนวทางพื้นฐานสามประการในองค์กร:

    ก) ไม่มีปัญหาคอขวด

    เนื่องจากไม่มีปัญหาคอขวดจึงสามารถผลิตผลิตภัณฑ์ทั้งหมดได้

    b) การปรากฏตัวของคอขวดหนึ่งจุด

    สมมติว่ามีปัญหาคอขวดในองค์กร มีความจำเป็นต้องแยกแยะระหว่างกรณีของกระบวนการทางเทคโนโลยีทางเลือกเดียวและที่เป็นไปได้

    หากต้นทุนผันแปรต่อหน่วยเวลาเท่ากันสำหรับผลิตภัณฑ์ทั้งหมด คุณต้องตรวจสอบว่าจำนวนความครอบคลุมเป็นค่าบวกสำหรับผลิตภัณฑ์และกระบวนการทั้งหมด หรือว่าเป็นค่าลบสำหรับชุดผลิตภัณฑ์และกระบวนการบางอย่างหรือไม่

    หากทราบรายได้จากการขายและต้นทุนผันแปรต่อหน่วยการผลิตดังนั้นจำนวนความครอบคลุมจึงสามารถสร้างโปรแกรมการผลิตที่เหมาะสมที่สุดเป็นขั้นตอนได้ มีเพียงคอขวดเดียวเท่านั้น

    c) การปรากฏตัวของปัญหาคอขวดหลายประการ

    เมื่อตรวจสอบโปรแกรมการขายและการผลิต หากพบว่ามีปัญหาคอขวดหลายประการในการผลิตในคราวเดียว การตัดสินใจก็จะยากขึ้น ในกรณีนี้ ควรใช้วิธีการโปรแกรมเชิงเส้น

    การวางแผนโปรแกรมการผลิตที่เหมาะสมไม่ควรดำเนินการจากมุมมองของต้นทุนเพียงอย่างเดียว แต่ต้องคำนึงถึงเกณฑ์ที่มุ่งเน้นผลกำไรด้วย ข้อมูลการคำนวณตามต้นทุนทั้งหมดไม่เพียงพอสำหรับการวางแผนโปรแกรมการผลิตที่เหมาะสมที่สุด เนื่องจากต้นทุนการคำนวณดังกล่าวไม่ได้แบ่งออกเป็นตัวแปรและคงที่ นอกจากค่าใช้จ่ายแล้วยังต้องคำนึงถึงผลกระทบด้วย การตัดสินใจของฝ่ายบริหารเกี่ยวกับรายได้จากการขายและจำนวนเงินความคุ้มครอง ทั้งนี้จำเป็นต้องใช้ข้อมูลจากการคำนวณจำนวนเงินความคุ้มครอง

    การมีอยู่ของปัญหาคอขวดสามารถอธิบายได้ด้วยเหตุผลสองประการ:

    ก) หากกระบวนการผลิตเป็นขั้นตอนเดียว กำลังการผลิตที่มีอยู่ไม่เพียงพอที่จะผลิตปริมาณสูงสุดที่เป็นไปได้ของผลิตภัณฑ์ทั้งหมดที่มีปริมาณความครอบคลุมเป็นบวก

    b) หากกระบวนการผลิตมีหลายขั้นตอน คอขวดจะเกิดขึ้นเพียงส่วนเดียวซึ่งกำลังการผลิตไม่เพียงพอที่จะผลิตผลิตภัณฑ์ทั้งหมดได้

    หากองค์กรมีปัญหาคอขวด จำเป็นต้องคำนวณจำนวนความครอบคลุมที่เกี่ยวข้องต่อหน่วยของเวลาโหลดคอขวดสำหรับแต่ละกลุ่มผลิตภัณฑ์ เมื่อคำนึงถึงสิ่งนี้ ควรเปลี่ยนลำดับการผลิตของผลิตภัณฑ์เพื่อให้ได้มูลค่าที่เหมาะสมที่สุดของผลการผลิต การกำหนดโปรแกรมการขายและการผลิตโดยไม่คำนึงถึงกำลังการผลิตที่มีอยู่ในจุดคอขวด ส่งผลให้จำนวนความครอบคลุมทั้งหมดลดลง นี่เป็นการตัดสินใจที่ผิด เนื่องจากในกรณีนี้บริษัทจะสูญเสียจำนวนเงินความคุ้มครอง

    พื้นหลัง
    ในเดือนตุลาคม 2553 ซึ่งเป็นส่วนหนึ่งของการจัดโครงการปรับปรุงประสิทธิภาพ
    โรงงานเครื่องบินในปี 2554 บริษัท Rightstep ได้ทำการวินิจฉัยสาเหตุหลัก
    โรงงานผลิต วัตถุประสงค์หลักของการสำรวจคือเพื่อระบุปัญหาคอขวด เช่น สิ่งอำนวยความสะดวก ขั้นตอนการจัดการ และแผนกต่างๆ ที่จำกัดผลผลิตทั้งหมดของโรงงาน
    จากผลการวิเคราะห์พบว่าหลักๆ “ คอขวด" ของโรงงานถูกระบุ (ปัญหาคอขวดที่อาจเกิดขึ้นคือขั้นตอน (หรือค่อนข้างขาด) เพื่อรักษาองค์ประกอบทางอิเล็กทรอนิกส์ของผลิตภัณฑ์):
    1) ร้านประกอบ ASTS1;
    2) วิธีการวางแผนและการจัดการการผลิต
    3) ร้าน SHTs (ปั๊ม), ร้าน MC (เครื่องกล)
    บทความนี้จะอธิบายถึง "การแตกหัก" ของ "คอขวด" ในเวิร์กช็อป ASC1

    Shop ASTS1 เป็นร้านแรกในห่วงโซ่การประกอบเครื่องจักรตามลำดับ (โดยที่ผลิตภัณฑ์เริ่มประกอบจากหน่วย จากนั้นจะถ่ายโอนไปยังร้านประกอบที่เหลือ ASTS2 และ DSP) ซึ่งเป็น "จุดสุดยอดของสามเหลี่ยม" ของ in - ห่วงโซ่อุปทานของโรงงานและเป็นผู้บริโภคของร้านค้า "การผลิตชิ้นส่วน" ที่เหลือ (DDC) หรือ - จุดเริ่มต้นของ “ท่อ” สำหรับการเคลื่อนย้ายผลิตภัณฑ์ไปตามห่วงโซ่การประกอบ

    ด้วยเหตุนี้ ปัญหาใดๆ ที่เกิดขึ้นในเวิร์กช็อป ASTS1 และการจำกัดการเริ่มต้นการประกอบผลิตภัณฑ์จะนำไปสู่ข้อจำกัดในการผลิตเครื่องจักรของทั้งโรงงานโดยอัตโนมัติ
    และในฤดูใบไม้ร่วงปี 2010 เวิร์กช็อป ASTS1 ก็ประสบปัญหาคอขวด โดยมีผลผลิตเฉลี่ย 6 รายการต่อเดือน โดยมีแผนโรงงาน 7-8 รายการ ปัญหาหลักของ ASC1 คือ:
    1) การไม่ซิงโครไนซ์การจัดหาชิ้นส่วนและชุดประกอบจากการประชุมเชิงปฏิบัติการอื่นไปยังการประชุมเชิงปฏิบัติการ ASC (อ่าน - การขาดแคลน "ที่ไม่คาดคิด" ในการประกอบอย่างต่อเนื่อง)
    เนื่องจากไม่มีแผนการจัดหาตามคำสั่งซื้อ (เครื่องจักร) ที่คำนวณได้จริง
    2) ไม่ได้ผลอย่างมาก องค์กรภายในทำงานในโรงงาน โดยมีอาการหลัก (ไม่ใช่สาเหตุ!): “ไม่มีคน”, “ชิ้นส่วนชำรุด”, “ไม่มีสถานที่, ไม่มีที่วางสินค้า”

    ที่จริงแล้ว ปัญหาของ ASTS1 สะท้อนถึงปัญหาในการจัดการและการจัดองค์กรการผลิตของทั้งโรงงาน และเหนือสิ่งอื่นใด:
    1) การไม่มีแผนการตั้งชื่อเครื่องจักรที่เกิดขึ้นจริงซึ่งประสานกันระหว่างร้านค้า "การผลิตชิ้นส่วน" และ "การประกอบรวม" (DDC และ ASC) ซึ่งนำไปสู่การผลิตที่ไม่ได้เป็นสิ่งที่จำเป็นและในปริมาณที่ไม่ถูกต้อง - ทำงาน "เนื่องจากการขาดแคลน" และท้ายที่สุดก็ทำให้ตารางการประกอบหยุดชะงัก
    2) ค่าจ้างชิ้นงาน ซึ่งอนุญาตและบังคับให้การประชุมเชิงปฏิบัติการดำเนินการ ประการแรกคือ "ขั้นต้น" แม้ในการประชุมเชิงปฏิบัติการที่มีคอขวด โดยไม่คำนึงถึงการขาดดุลเสมอไป

    ทางเลือกของแนวคิด

    จากผลการวิเคราะห์ข้อมูลและการอภิปรายเกี่ยวกับวิธีการที่เป็นไปได้ในการ "แก้ไข" คอขวด ประเด็นการเปลี่ยนแปลงต่อไปนี้ได้รับการระบุ

    อันดับแรก:เปลี่ยนระบบบริหารจัดการการผลิตให้ต้องผลิตเฉพาะสิ่งที่จำเป็นด้วยต้นทุนที่ค่อนข้างต่ำ เพื่อสิ่งนี้ จำเป็น:
    1) จัดระบบการวางแผนร้านค้าระบบการตั้งชื่อแบบดึงตามสั่งระบบสำหรับตรวจสอบการส่งมอบและเครื่อง "ปิด"
    2) ผ่านการเปลี่ยนแปลงในระบบแรงจูงใจ (การปรับเปลี่ยน "ข้อตกลง") กระตุ้นให้การประชุมเชิงปฏิบัติการปฏิบัติตามแผนที่กำหนดไว้ก่อนอื่น
    3) ให้ความสามารถในการจัดการกระบวนการผลิตและการจัดหาผ่านการแสดงภาพและการติดตามสิ่งที่เกิดขึ้น

    ที่สอง: การเปลี่ยนแปลงระบบองค์กรการผลิตของโรงงานโดย:
    1) การเพิ่มประสิทธิภาพของการเคลื่อนย้ายชิ้นส่วนและชุดประกอบภายในร้านค้า
    2) การกำจัดการผลิตที่ไม่จำเป็นและการดำเนินการที่ไม่ใช่การผลิตทั้งหมดเกี่ยวกับวิธีการสร้างเครื่องจักร
    3) ให้ภาพสิ่งที่เกิดขึ้น สถานะของสถานการณ์ปัจจุบัน ปัญหาในอนาคตและปัจจุบัน
    4) การลดชุดการเปิดตัวและความเคลื่อนไหวตลอดห่วงโซ่การผลิตทั้งหมด

    เพื่อดำเนินการเปลี่ยนแปลงเหล่านี้ เครื่องมือที่เลือกคือ SCM (“การจัดการห่วงโซ่การผลิต”) และ Lean (“ การผลิตแบบลีน") และ TOC ("ทฤษฎีข้อจำกัด") วิธีการจัดการการผลิต

    ทำงานในทิศทางแรก "ระบบการวางแผนและการตรวจสอบของโรงงาน" เริ่มดำเนินการผ่านการแนะนำกระบวนการ (ขั้นตอน) ใหม่สำหรับโรงงานทั้งหมด ซิงโครไนซ์ (ตามตารางการประกอบและการจัดส่งของเครื่องจักร) การวางแผนและการผลิต บวกกับการแนะนำระบบการวางแผนและติดตามไอทีแบบลีนที่รองรับระบบที่ผลิตโดย SCMo

    งานในทิศทางที่สองได้รับการยอมรับสำหรับการนำไปปฏิบัติโดยใช้เครื่องมือแบบลีนและ TOC แบบดั้งเดิมแต่ "ดัดแปลง" สำหรับใช้ในโรงงาน

    การเปลี่ยนแปลง องค์กรใหม่ภายในการประชุมเชิงปฏิบัติการ ASC1

    โครงการเปลี่ยนแปลงที่ ASTS1 เริ่มต้นในเดือนมกราคม 2554 แต่แล้ว เนื่องจากมีการเปลี่ยนแปลงบางอย่างในเวิร์กช็อป จึงหยุดลง

    ผลลัพธ์ของโครงการที่นำเสนอด้านล่างนี้บรรลุผลสำเร็จในเวลาเพียงไม่กี่เดือน ได้แก่ ต้องขอบคุณตำแหน่งที่เด็ดขาดและมีหลักการของฝ่ายบริหารการประชุมเชิงปฏิบัติการ และเมื่อมองไปข้างหน้า เราทราบว่าเป้าหมายหลักของโครงการคือการเพิ่มขึ้น ปริมาณงานเวิร์คช็อปตั้งแต่ 6 ถึง 8 เครื่องต่อเดือน โดยมี:
    ไม่เพิ่มขึ้น ต้นทุนการดำเนินงาน(เงินเดือน จำนวนคนงาน ฯลฯ) และสต็อกชิ้นส่วนและงานระหว่างดำเนินการ - บรรลุผลสำเร็จ

    การเพิ่มประสิทธิภาพการประกอบผลิตภัณฑ์นอกสถานที่

    ที่ตั้งทางกายภาพของผลิตภัณฑ์ การจัดการกับข้อจำกัดด้านพื้นที่

    จากผลการวิเคราะห์ พบว่าหนึ่งใน “ปัญหาคอขวด” ของ ASTS1 คือการจัดระเบียบทางกายภาพของพื้นที่การชุมนุมนอกสถานที่ ไซต์งานเต็มไปด้วยอุปกรณ์/ชั้นลอยเก่า เทมเพลตที่ไม่จำเป็น ชิ้นส่วน และเรื่องไร้สาระอื่นๆ ที่ไม่ได้ใช้จริงในการผลิตเครื่องจักรที่มีการดัดแปลงที่มีอยู่

    ด้วยเหตุนี้ จึงเป็นไปได้ที่จะวางเครื่องจักรที่ประกอบพร้อมกันสูงสุด 3-4 เครื่องในพื้นที่การประกอบนอกสถานที่ ยิ่งไปกว่านั้น ในสภาวะที่คับแคบและไม่เหมาะสมอย่างยิ่ง



    เท่านี้ก็คงเพียงพอแล้วหาก องค์กรในอุดมคติงานประกอบและยึดตามกำหนดการส่งมอบชิ้นส่วนจากโรงปฏิบัติงานอื่น ๆ อย่างสมบูรณ์แบบ แต่ “ใน. โลกแห่งความเป็นจริง"หากเกิดปัญหากับสินค้าตัวใดก็จะทำให้การประกอบช้าลงรวมทั้ง ทางเลื่อนของเครื่องจักรอื่นๆ ทั้งหมด และทีมประกอบก็ไม่มีความสามารถทางกายภาพที่จะเปลี่ยนไปใช้เครื่องจักรอื่นได้
    ด้วยเหตุนี้ จึงมีการตัดสินใจรื้อถอนอุปกรณ์ที่ไม่จำเป็น เคลียร์ไซต์งาน และจัดระเบียบ "ไลน์" การประกอบเครื่องจักรสองรายการบนไซต์งาน ในระหว่างงานนี้ มีการใช้วิธีการจัดวางตามหลักสรีระศาสตร์ของพื้นที่ทำงานตาม 5C ดูแผนภาพและภาพถ่าย



    เป็นผลให้พื้นที่ประกอบนอกสถานที่สามารถรองรับเครื่องจักรได้ 6 เครื่อง รวมถึงเครื่องที่จัดส่งด้วย และทำให้การจัดสถานที่ทำงานดีขึ้นและสะดวกยิ่งขึ้นอย่างไม่มีใครเทียบได้

    การโอนการปฏิบัติงานจากการประกอบขั้นสุดท้ายของผลิตภัณฑ์ไปยังพื้นที่อื่นๆ

    จากผลการวิเคราะห์พื้นที่การชุมนุมนอกสถานที่ซึ่งเป็น "จุดคอขวด" ของการประชุมเชิงปฏิบัติการ พบว่ามีการดำเนินการ "พิเศษ" จำนวนมาก เช่น การดำเนินงานที่สามารถทำได้มีประสิทธิภาพมากขึ้นในด้านอื่น ๆ และใช้เวลาน้อยลง บุคลากรที่มีคุณสมบัติเหมาะสม- ตัวอย่างบางส่วน - ดูรูป

    หลังจากการวิเคราะห์และหารืออย่างถี่ถ้วนกับนักเทคโนโลยีของเวิร์กช็อป การดำเนินการเหล่านี้ก็ถูกถ่ายโอนไปยังพื้นที่อื่นๆ ที่มีผู้คนพลุกพล่านน้อยกว่า ทำให้ผู้ประกอบมีเวลาจากการปฏิบัติงาน "ที่ไม่ใช่งานหลัก" มากขึ้น

    การเปลี่ยนระบบการคงค้าง ค่าจ้างคนงาน

    การปฏิรูประบบค่าจ้างสำหรับคนงานได้เปลี่ยนแปลงไป ซึ่งเป็นส่วนหนึ่งของการปฏิรูป
    กองทุนค่าจ้างได้รับการคำนวณอย่างชัดเจนตามแผนการผลิต ข้อเท็จจริงขึ้นอยู่กับจำนวนเครื่องจักรที่ผลิตและโอนไปยังโรงงานถัดไปในห่วงโซ่
    นอกจากนี้ เงินจำนวนนี้จะถูกแบ่งให้กับสมาชิกในทีมประกอบ (หัวหน้าคนงาน) ขึ้นอยู่กับคุณสมบัติของคนงานและอัตราการมีส่วนร่วมของแรงงาน

    ระบบเตือนภัย

    นอกจากนี้ ยังมีการตัดสินใจที่จะสร้างโครงสร้างกระบวนการทำงานที่ยืดหยุ่นในเวิร์กช็อป โดยมุ่งเน้นที่การสร้างเงื่อนไขสูงสุดสำหรับ
    เจ้าหน้าที่ฝ่ายผลิตและแจ้งเตือน/แก้ไขความต้องการ/ปัญหาทั้งหมดทางออนไลน์ ดังที่แสดงด้านล่าง:

    เพื่อตอบสนองต่อห่วงโซ่ข้างต้นอย่างรวดเร็วต่อความต้องการที่เกิดขึ้นใหม่ของนักแสดง พวกเขาจึงตัดสินใจใช้เครื่องมือแสดงภาพ เช่น ไฟสัญญาณ แต่ละส่วนของไซต์งานได้รับการวางแผนให้ติดตั้งหลอดไฟสองประเภท ได้แก่ สีเขียวและสีแดง และปุ่มสำหรับเปิดใช้งาน

    โคมเขียวส่งสัญญาณว่าภาคส่วนได้รับการจัดหาชิ้นส่วนอย่างครบถ้วน มีอุปกรณ์สำหรับการผลิตพร้อมใช้งาน และความต้องการการประกอบในปัจจุบันมีความชัดเจนอย่างสมบูรณ์ (เช่น สถานการณ์เป็นเรื่องปกติ)

    หลอดไฟสีแดง- นี่เป็นสัญญาณว่าภาคส่วนจำเป็นต้องแก้ไขปัญหาในหนึ่งในสามด้าน และหัวหน้าคนงานของสถานที่จะต้องตอบสนองต่อคำขอนี้โดยเร็วที่สุด และใช้มาตรการเพื่อการแก้ปัญหาอย่างรวดเร็ว หรือแจ้งให้ผู้ปฏิบัติงานรายอื่นทราบหากปัญหาส่งผลกระทบต่อความสามารถของพวกเขา

    สีเหลือง- ปัญหามีอยู่ แต่อยู่ระหว่างการแก้ไข

    การเพิ่มประสิทธิภาพส่วนการประกอบโดยละเอียดของเวิร์กช็อป

    ระบบการตรวจสอบการจัดหาวัสดุจากส่วนการประกอบโดยละเอียดของโรงงาน

    หลังจากดำเนินการเปลี่ยนแปลงข้างต้น ความจุของส่วนประกอบนอกสถานที่ก็เพิ่มขึ้นเป็น 8 คันต่อเดือน แต่เกือบจะในทันที ปัญหาคอขวดของโรงปฏิบัติงาน ASTS1 ได้ย้ายไปยังพื้นที่การประกอบโดยละเอียดของโรงปฏิบัติงาน

    ด้วยเหตุนี้ องค์กรใหม่ได้รับการแนะนำในส่วนการประกอบโดยละเอียดของเวิร์กช็อป ซึ่งเป็นส่วนที่ผลิตและจัดหาชุดประกอบโดยตรงสำหรับการประกอบนอกสถานที่ งานเสร็จสมบูรณ์ในเวลาประมาณหนึ่งเดือนตามวิธีการที่เสนอโดย Rightstep:
    1) การเพิ่มประสิทธิภาพการจัดสถานที่ทำงานบนไซต์ตามหลักการของ "5C"
    2) การติดตั้งระบบแสดงภาพ
    3) การจัดระบบการวางแผนการดึงและการจัดหาชิ้นส่วนสำหรับการประกอบโดยใช้วิธี "ซูเปอร์มาร์เก็ต" และ "คัมบัง"



    องค์กรการผลิตใหม่ที่ได้รับการแนะนำนี้ได้รับความชื่นชอบจากหัวหน้าคนงานและพนักงานในส่วนอื่นๆ ของเวิร์กช็อปมากจนส่วนต่างๆ "เรียงกัน" เพื่อการนำไปปฏิบัติอย่างแท้จริง

    การเปลี่ยนแปลง รับประกันการส่งมอบตรงเวลาไปยัง ACC1


    ระบบการวางแผนและติดตาม SCMo

    จากมุมมองของเงื่อนไข "ภายนอก" ปัญหาใหญ่สำหรับเวิร์กช็อปคือการจัดหาชิ้นส่วนที่ไม่เป็นจังหวะ (ไม่ซิงโครนัสกับจังหวะในการประกอบเครื่องจักรเฉพาะ) จากศูนย์กระจายสินค้าของเวิร์กช็อปของโรงงาน
    การแก้ปัญหานี้ดำเนินการภายในกรอบงานของโครงการทั่วทั้งโรงงานสำหรับการตั้งค่าระบบการวางแผนระบบการตั้งชื่อแบบซิงโครนัสตามลำดับ วิธีการที่ใช้คือวิธีการวางแผนแบบ "ดึง" (ทันเวลาและตรงตามปริมาณที่จะสั่ง) และวิธีการทำงานกับ "บัฟเฟอร์" และ "ลำดับความสำคัญ" ของ "คอขวด" ของทฤษฎีข้อจำกัด

    ลีนถูกใช้เป็นเครื่องมือในการนำไปปฏิบัติ ระบบอีอาร์พี SCMo ซึ่งให้การวางแผนออนไลน์ การจัดการ และการตรวจสอบกระบวนการผลิตและการจัดหา
    อัลกอริธึมการวางแผนที่กำหนดค่าไว้สำหรับโรงงานทำให้สามารถสร้างแผนผลิตภัณฑ์แบบกำหนดเองได้ (สำหรับเครื่องจักรแต่ละเครื่องหรือคำสั่งซื้อจำนวนมาก)
    การผลิตและวัสดุสิ้นเปลืองสำหรับโรงงานแต่ละแห่งที่ครอบคลุมโดยระบบ ด้วยการส่งสัญญาณสี/การส่องสว่างของชิ้นส่วนแต่ละชุดที่โรงงานซัพพลายเออร์จัดหาให้ และมีการอัปเดตอย่างต่อเนื่องในการผลิต ดูแผนภาพด้านล่าง

    ในฐานะที่เป็นส่วนหนึ่งของโครงการการเปลี่ยนแปลงในเวิร์กช็อป ASTS1 เมื่อใช้ SCMo เป็นไปได้ที่จะติดตั้งกระบวนการต่อไปนี้ "อย่างถูกต้อง":
    1) การก่อตัวของลำดับสำหรับการประกอบเครื่องจักรในเวิร์กช็อป ASTS1 - ASTS2 - DSP และสำหรับ ASTS1 - การกำหนดกำหนดการส่งมอบสำหรับเครื่องจักรเฉพาะและในวันที่ระบุของเดือน (ดูแบบฟอร์มหน้าจอด้านล่าง):

    2) ตามกำหนดการส่งมอบเครื่องจักรโดยการประชุมเชิงปฏิบัติการ ASC1 - กำหนดแผนสำหรับการจัดหาชิ้นส่วนและชุดประกอบจากการประชุมเชิงปฏิบัติการของซัพพลายเออร์ ยังไม่สามารถดำเนินการให้เป็นอัตโนมัติได้อย่างสมบูรณ์ในขณะนี้ เนื่องจากความไม่ถูกต้องในองค์ประกอบอิเล็กทรอนิกส์ของผลิตภัณฑ์ (เครื่องจักร) ด้วยเหตุนี้ จึงมีการตัดสินใจที่จะคงไว้ซึ่งปัญหาการขาดแคลนทางอิเล็กทรอนิกส์ของ SCMo บางส่วนซึ่งส่งถึงการประชุมเชิงปฏิบัติการของซัพพลายเออร์ โดยซัพพลายเออร์จะต้องกำหนด "วันที่ที่สัญญา" ไว้ ในความเป็นจริง สิ่งเหล่านี้คือ “บันทึกการขาดแคลน” ที่ตีพิมพ์ออนไลน์และทุกคนเข้าถึงได้ ซึ่งก่อนหน้านี้ผู้จัดส่ง PDB ของร้านค้าจะเก็บไว้ และข้อมูลที่ร้านค้าของซัพพลายเออร์สามารถเข้าถึงได้ ซึ่งมักจะอยู่ในรูปแบบที่บิดเบี้ยว และเฉพาะในการประชุมการวางแผนเท่านั้น

    สิ่งนี้เกิดขึ้นภายในกรอบของวิธีการจัดการแบบใหม่ที่ถ่ายโอนไปยังระบบไอที กล่าวคือ ทำให้มั่นใจได้ถึงการมองเห็นภาพสูงสุดของสิ่งที่เกิดขึ้นสำหรับผู้เข้าร่วมทั้งหมดในห่วงโซ่การผลิต (ดูด้านล่าง):

    ผลข้างเคียงเชิงบวกคือการรักษา "การขาดดุลทางอิเล็กทรอนิกส์" ใน SCMo - ความเป็นไปได้ที่จะเปลี่ยนไปใช้การประชุมการวางแผนแบบ "อิเล็กทรอนิกส์" ซึ่งมีประสิทธิภาพสูงกว่าการประชุมแบบเดิมมากและเวลาที่ใช้ในการประชุมก็น้อยลง

    ระบบติดตามสิ่งที่เกิดขึ้น (ระบบกล้องวงจรปิด)

    ภายใน ทิศทางนี้เพื่อให้มั่นใจถึงการแสดงภาพสูงสุดของสิ่งที่เกิดขึ้นในการผลิต จึงได้มีการนำระบบการแสดงภาพ (กล้องวงจรปิด) มาใช้ในเวิร์กช็อป โดยทำงานในโหมดออนไลน์ และอนุญาตให้ดูว่าเกิดอะไรขึ้นจริงในพื้นที่ของเวิร์กช็อปหากจำเป็นที่ เวลาที่กำหนด


    ผลลัพธ์ของโครงการ

    1. กำลังการผลิตของเวิร์คช็อปเพิ่มขึ้นจาก 6 เป็น 8 เครื่องต่อเดือน

    โดย: ไม่มีการเพิ่มต้นทุนการดำเนินงาน (เงินเดือน จำนวนพนักงาน ฯลฯ) และสินค้าคงคลังของชิ้นส่วนและงานระหว่างดำเนินการ
    2. มีการใช้ระบบการวางแผนและติดตามอุปทาน ซึ่งไม่เพียงแต่ประสานการผลิตเท่านั้น แต่ยังรวมถึงการเปิดตัวการประชุมเชิงปฏิบัติการทั้งหมดของโรงงานตามกำหนดการด้วย
    การประกอบเครื่องจักรขั้นสุดท้ายและการประกอบขั้นสุดท้าย
    3. รับประกันความโปร่งใสเต็มรูปแบบของสิ่งที่เกิดขึ้นในการผลิต
    4. มีการกำหนดพื้นฐานเพื่อให้บรรลุอัตราการผลิต 9 คันต่อเดือนในปี 2555
    5. เปิดตัว "มู่เล่" ของการเปลี่ยนแปลงรวมถึง และในส่วนอื่นๆ ของการประชุมเชิงปฏิบัติการ

    ไรต์สเต็ป, ไอริส พาร์เทนแนร์ส

    คอขวด

    ปัญหาคอขวดคือการขาดแคลนกำลังการผลิตในห่วงโซ่กระบวนการ ซึ่งกำหนดโดยส่วนประกอบบางอย่าง เช่น อุปกรณ์ บุคลากร วัสดุ หรือการขนส่ง จะถูกกำจัดออกไปในระหว่างมาตรการขององค์กรและทางเทคนิค - การ "ปลดบล็อก" คอขวด

    ปัญหาคอขวดสามารถเกิดขึ้นได้ในองค์กรด้วยเหตุผลหลายประการ ในสภาวะของความร่วมมืออันซับซ้อนของเครื่องจักรต่างๆ ที่ทำงานอยู่ วิสาหกิจสมัยใหม่ลักษณะของการเชื่อมโยงภายในการผลิต สัดส่วนของการประชุมเชิงปฏิบัติการแต่ละแห่งและพื้นที่การผลิตไม่สามารถให้ได้เพียงครั้งเดียวและตลอดไป และยังคงไม่เปลี่ยนแปลง การปรับปรุงอุปกรณ์และเทคโนโลยีการผลิต การปรับปรุงองค์กรแรงงาน การเปลี่ยนแปลงธรรมชาติของการผลิตในพื้นที่หนึ่งย่อมจำเป็นต่อการเปลี่ยนแปลงที่สอดคล้องกันในพื้นที่อื่น ๆ ที่เกี่ยวข้อง

    ตารางที่ 46. คอขวด

    คอขวด

    คำอธิบายของปัญหา

    กิจกรรมและผลที่คาดว่าจะได้รับ

    เค้าโครงการประชุมเชิงปฏิบัติการ

    ในรูปแบบเวิร์กช็อป เครื่องจักรจะตั้งฉากกับสายการผลิต ซึ่งไม่รับประกันความปลอดภัยของคนงานที่ยืนอยู่ด้านหลังเครื่องจักร

    จะเป็นการเหมาะสมกว่าหากจัดเรียงเครื่องจักรในรูปแบบที่เรียกว่า "ก้างปลา" - โดยทำมุมกับเส้น ซึ่งจะทำให้มั่นใจในความปลอดภัยของคนงานและอื่นๆ การใช้งานที่มีประสิทธิภาพพื้นที่การประชุมเชิงปฏิบัติการ

    งานขนส่ง

    การขนส่งในศูนย์บริการทำงานดังนี้: ในช่วงเริ่มต้นของวัน รถบรรทุกจะมาถึงศูนย์บริการ รับชิ้นงานจากคลังสินค้าและส่งมอบตามสายการผลิต จากนั้นจึงออกเดินทาง เมื่อสิ้นสุดวัน รถบรรทุกก็เริ่มทำงานอีกครั้ง โดยจะรับผลิตภัณฑ์สำเร็จรูปจากตู้คอนเทนเนอร์และนำไปยังคลังสินค้าที่เหมาะสม เวลาที่เหลือยานพาหนะไม่ได้ใช้งาน

    คุณสามารถจัดระเบียบการกระจายชิ้นงานและการส่งมอบได้ ผลิตภัณฑ์สำเร็จรูปไม่ใช่ตอนสิ้นสุดและเริ่มต้นวันทำงาน แต่ตลอดระยะเวลาการทำงานทั้งหมด

    งานของผู้ขนส่งและรถตัก

    ค่าจ้างของผู้ขนส่งและผู้บรรทุกจะจ่ายเต็มอัตรา แต่จะไม่ได้รับค่าจ้างตลอดทั้งวันทำงาน

    คุณสามารถจ่ายค่ารถตักและรถขนส่งได้ครึ่งหนึ่งเพราะ... การจ้างงานในโรงงานมีน้อยมาก

    สร้างการผสมผสานของอาชีพ - ผู้ขนส่งสามารถทำงานเป็นรถตักได้

    บทสรุป

    ใน งานหลักสูตรได้มีการดำเนินมาตรการเพื่อจัดระเบียบ กิจกรรมการผลิตร้านประกอบเครื่องกล. ในระหว่างกระบวนการพัฒนา จะมีการคำนวณและกำหนดปริมาณการผลิต ปริมาณที่ต้องการอุปกรณ์ จำนวนบุคลากร พื้นที่ปฏิบัติงาน กองทุนค่าจ้างของคนงานหลัก คนงานเสริม ผู้จัดการ ลูกจ้าง ผู้เชี่ยวชาญ การแก้ปัญหาในการจัดการการผลิตและการจัดการในเวิร์กช็อปนั้นขึ้นอยู่กับการศึกษาการออกแบบผลิตภัณฑ์ กระบวนการทางเทคโนโลยีของการผลิต และการจัดระเบียบแรงงานของพนักงานในองค์กร

    เราจะคำนวณภาระของอุปกรณ์ที่วางแผนไว้และระบุปัญหาคอขวด เราจะสร้างตารางการผลิตและวิเคราะห์โปรแกรมการผลิตเพื่อดูความเป็นไปได้

    การระบุปัญหาคอขวดในโปรแกรมการผลิต การคำนวณและความสมดุลของโหลดอุปกรณ์เมื่อวางแผนการผลิต

    ผู้จัดการฝ่ายผลิตคนใดมักถามคำถามว่า “เขาจะสามารถทำได้หรือไม่ ดำเนินการตามคำสั่งซื้อที่วางแผนไว้ทั้งหมดให้ตรงเวลา- กำลังการผลิตขององค์กรเพียงพอสำหรับสิ่งนี้หรือไม่? คาดว่างานจะเข้มข้นแค่ไหนในช่วงวางแผนนี้?

    วิดีโอนี้จะสาธิตโมดูลของระบบ TCS ซึ่งประการแรกคือ คำนวณและวิเคราะห์ตัวบ่งชี้โหลดอุปกรณ์เชิงปริมาตรในช่วงเวลาที่สนใจ และประการที่สอง เห็นภาพ แผนปฏิทินการผลิตในรูปแบบของแผนภูมิ Gantt พร้อมการแสดงโหลดของอุปกรณ์ที่สนใจพร้อมกัน

    ดังนั้น เนื่องจากข้อมูลเบื้องต้นในระบบ TCS จึงมีการสร้างใบสั่งผลิตสำหรับผลิตภัณฑ์สำเร็จรูปแล้ว - ตู้ติดตั้งในการกำหนดค่าและปริมาณต่างๆ และใบสั่งสำหรับการผลิตส่วนประกอบที่ได้มาตรฐาน การผลิตของตัวเองเพื่อรักษามาตรฐานสต๊อกสินค้า

    คำสั่งซื้อแต่ละรายการมีวันวางจำหน่ายโดยประมาณ สำหรับการสั่งซื้อ ผลิตภัณฑ์เชิงพาณิชย์โดยปกติจะเป็นเงื่อนไขของสัญญาสำหรับการสั่งซื้อภายในประมาณกลางเดือน เราขอเตือนคุณว่าในคลังสินค้าของเรา เรามีสต็อกส่วนประกอบที่ได้มาตรฐาน (สำรอง) ซึ่งคำสั่งซื้อสำหรับครึ่งแรกของเดือนจะแล้วเสร็จ และรายการสั่งซื้อภายในที่ผลิตภายในกลางเดือนจะถูกใช้เพื่อเรียกคืนการสำรองคลังสินค้าและดำเนินการตามคำสั่งซื้อที่เหลือสำหรับงวดนั้นให้เสร็จสิ้น

    ขั้นตอนต่อไปคือการคำนวณวันที่เปิดตัวสำหรับรายการผลิตภัณฑ์และส่วนประกอบ รวมถึงส่วนประกอบที่ผลิตในคำสั่งซื้อแยกต่างหากสำหรับคลังสินค้าชิ้นส่วนมาตรฐาน เรามาเลือกข้อกำหนดการผลิตทั้งหมดในช่วงการวางแผนและเรียกใช้แมโคร " การคำนวณวันเปิดตัว/วางจำหน่าย".

    ด้วยเหตุนี้ สำหรับชิ้นส่วนและชุดประกอบที่ผลิตทั้งหมด เราได้รับวันที่เริ่มต้นและสิ้นสุดการผลิตโดยประมาณ โดยคำนวณตามกำหนดเวลาที่ระบุและกระบวนการทางเทคโนโลยีที่ประยุกต์ใช้

    มาทำให้ข้อกำหนดการผลิตเหล่านี้ใช้งานได้ และไปที่แท็บที่เกี่ยวข้อง แผนการผลิตระบบการตั้งชื่อ- โดยแสดงรายการพร้อมปริมาณที่จะผลิตและกำหนดเวลา

    ดังนั้น วันเปิดตัวเร็วที่สุดสำหรับชุดนี้คือวันที่ 18 กุมภาพันธ์ วันวางจำหน่ายล่าสุดคือวันที่ 23 มีนาคม 2010

    แท็บ "กระบวนการทางเทคนิค" ให้ข้อมูลโดยละเอียดเพิ่มเติม ได้แก่ แผนการดำเนินงาน เหล่านั้น. รายการงานทั้งหมดที่ต้องทำเพื่อผลิตรายการที่วางแผนไว้ทั้งหมด สำหรับแต่ละงาน ความซับซ้อนของการดำเนินการจะถูกคำนวณและสอดคล้องกับ กระบวนการทางเทคโนโลยีอุปกรณ์ เวิร์กช็อป พื้นที่ อาชีพ และหมวดหมู่จะปรากฏขึ้น

    นอกจากนี้ระบบ TCS ยังเก็บรักษาข้อมูลเกี่ยวกับการจอดเครื่องจักรขององค์กร เช่น ปริมาณที่แท้จริงของอุปกรณ์แต่ละรุ่นและความพร้อมใช้งานในแผนกต่างๆ ตัวอย่างเช่น ในส่วนแรกของเวิร์กช็อปครั้งที่ 7 เรามีแท่นพิมพ์ Amada และแท่นพิมพ์ FINN-POWER ในส่วนที่สองจะมีอุปกรณ์สำหรับการเชื่อม และในส่วนที่สามจะมีโต๊ะสำหรับประกอบและควบคุม

    เพื่อประเมินความเป็นไปได้ของแผนนี้ เราใช้โมดูล "" ของระบบ TCS เราจะกำหนดวันที่เริ่มต้นและสิ้นสุดสำหรับช่วงเวลาที่คาดว่าจะดำเนินงานตามแผน ได้แก่ วันที่ 18 กุมภาพันธ์และ 23 มีนาคม 2553 มาทำการคำนวณกัน

    จากการคำนวณจะแสดงรายการรุ่นอุปกรณ์ทั้งหมดที่ใช้ในการทำงาน มีการระบุว่าเป็นกลุ่มใดและอยู่ที่ไหน สำหรับแต่ละรุ่น จะมีการคำนวณกองทุนเวลาทำงานเป็นชั่วโมงในช่วงเวลาที่กำหนด การคำนวณจะคำนึงถึงจำนวนอุปกรณ์นี้ในแผนกและกำหนดการซ่อมและบำรุงรักษาตามแผน นอกจากนี้ยังคำนวณด้วยว่าอุปกรณ์นี้จะถูกครอบครองโดยรวมกี่ชั่วโมงในการดำเนินการตามแผน คอลัมน์สุดท้ายแสดงการบรรทุกที่วางแผนไว้

    ในทางปฏิบัติขึ้นอยู่กับขนาดขององค์กรและโครงสร้าง รายการนี้อาจมีขนาดใหญ่มาก (เวิร์กช็อป, ส่วนต่างๆ, โมเดลต่างๆ) การทำงานกับข้อมูลจำนวนมากอาจเป็นเรื่องยาก ดังนั้นเพื่อความสะดวกคุณสามารถใช้การตั้งค่าต่างๆได้

    ตัวอย่างเช่น แสดงภาระงานสำหรับแผนกเดียวที่เราสนใจ เรามาเลือกส่วนแรกของเวิร์กช็อปที่สิบสองหรือส่วนที่สองของเวิร์กช็อปที่เจ็ดกันดีกว่า คุณสามารถแสดงการดาวน์โหลดเฉพาะผู้ที่เราสนใจเท่านั้น กลุ่มอุปกรณ์ตัวอย่างเช่น การควบคุม อุปกรณ์ของกลุ่มนี้มีอยู่ในแผนกต่างๆขององค์กร

    หากต้องการระบุปัญหาคอขวดที่อาจเกิดขึ้นในแผนการผลิตของเราอย่างรวดเร็ว เพียงป้อน เกณฑ์การโหลด- ป้อน 70% โดยพิจารณาว่าอุปกรณ์ที่มีการใช้งานในช่วงการวางแผนเกิน 70-80% ถือเป็นกลุ่มความเสี่ยงที่เรียกว่า มาซ่อนเส้นที่มีภาระน้อยลงกันเถอะ ในตัวอย่างของเรา เฉพาะเครื่องกดป้อมปืนระบบไฮดรอลิก FINN-POWER เท่านั้นที่จะรับน้ำหนักได้มากกว่า 70% กล่าวคือ สำหรับแผนเดือนมีนาคมถือเป็นคอขวด

    ความล้มเหลวโดยอุบัติเหตุของอุปกรณ์นี้อาจนำไปสู่การหยุดชะงักในการดำเนินการ (หากไม่ใช่ทั้งแผน) คำสั่งซื้อจำนวนมากในช่วงเวลาการวางแผน ซึ่งมักจะนำไปสู่ไม่เพียงแต่การลงโทษทางการเงิน แต่ยังรวมถึงการสูญเสียที่ไม่ใช่ทางการเงินด้วย ตัวอย่างเช่น เหตุการณ์เชิงลบนี้อาจส่งผลกระทบเช่นกัน ชื่อเสียงทางธุรกิจรัฐวิสาหกิจ

    มาดูกันว่าคุณควรดูอุปกรณ์อะไรบ้าง ความสนใจเป็นพิเศษ- เราป้อนค่าเกณฑ์ 50% และเพียงระบายสีเส้นดังกล่าวในสีที่เลือก เพิ่มเบรกกด Amada ให้กับ FINN-POWER แล้ว โดยมีภาระการออกแบบอยู่ที่ 57% การประชุมเชิงปฏิบัติการและอุปกรณ์อื่น ๆ ทั้งหมดนั้นไม่ได้บรรทุกหนักนักและมีแนวโน้มว่าจะไม่ต้องการความสนใจจากผู้วางแผนเพิ่มขึ้น

    ดังนั้นเมื่อใช้โมดูล "" เราสามารถสรุปได้ดังต่อไปนี้:

    โดยหลักการแล้ว ไม่ว่าแผนของเราจะเป็นไปได้หรือไม่ก็ตาม เกณฑ์สำหรับการประเมินนี้จะโหลดเกิน 100% สำหรับรุ่นใดๆ หากบางแห่งมีภาระมากกว่า 100% ก็ไม่มีจำนวนเงินใดที่จะช่วยได้ วิธีการที่ทันสมัยการเพิ่มประสิทธิภาพของกำหนดการผลิต ในกรณีนี้จำเป็นต้องเพิ่มกองทุนปฏิบัติการอุปกรณ์เช่น เพิ่มระยะเวลาหรือจ้างบุคลากรเพิ่มเติมที่จะทำงานกะที่สอง หรือเปิดตัวสำเนาอุปกรณ์ชุดที่สองในบริเวณใกล้เคียง
    แผนตัวอย่างของเราไม่มีตำแหน่งเดียวที่มีค่าโหลดเกิน 100% ซึ่งหมายความว่า อย่างน้อยในทางทฤษฎี จะสามารถทำงานให้แล้วเสร็จตามจำนวนที่กำหนดภายในกรอบเวลาที่กำหนดโดยใช้อุปกรณ์ที่มีอยู่ ไม่ว่าเราจะดำเนินการตามแผนในความเป็นจริงของการผลิตของเราหรือไม่ การประเมินนี้ยังช่วยให้เราสามารถสรุปเกี่ยวกับความเป็นไปได้ของแผนที่นำเสนอ แต่ไม่ใช่ในทางทฤษฎีเหมือนแผนแรก แต่ใกล้เคียงกับชีวิตและลักษณะเฉพาะส่วนบุคคล การผลิตแต่ละครั้ง ตัวอย่างเช่น เห็นได้ชัดว่าการใช้อุปกรณ์ที่ 99% จะทำให้แผนสามารถบรรลุผลภายใต้สภาพการทำงานเท่านั้นโดยไม่มีความล้มเหลว ความล่าช้า และการหยุดทำงาน เมื่อระบบทั้งหมดทำซ้ำและหุ่นยนต์กำลังทำงานในองค์กร ในความเป็นจริง ความล้มเหลวและความล่าช้ามักเกิดขึ้นจากหลายสาเหตุ ไม่ว่าจะเป็นวัสดุที่จัดส่งไม่ตรงเวลา หรือไม่ได้ติดตั้งเครื่องจักร หรือพนักงานล้มป่วย หรือเกิดอุบัติเหตุทางไฟฟ้า เป็นต้น ฯลฯ ดังนั้นในแต่ละองค์กร แม้แต่การประชุมเชิงปฏิบัติการและส่วนต่างๆ ขององค์กรนี้หรือประเภทต่างๆ ทำงานตามเกณฑ์นี้มีความหมายที่แตกต่างกัน
    - ตัวอย่างเช่นสำหรับพื้นที่หนึ่งการโหลด 80% ถือว่าวิกฤตและสำหรับอีกพื้นที่หนึ่ง - 60% เหล่านั้น. สำหรับงานหรือไซต์แต่ละประเภท สามารถทำการเปรียบเทียบกับค่าเกณฑ์ที่เกี่ยวข้อง ซึ่งนักวางแผนที่มีประสบการณ์มักจะรู้จากการปฏิบัติโครงสร้างของสวนเครื่องจักรที่มีอยู่ในองค์กรสอดคล้องกับโปรแกรมการผลิตหรือไม่? ข้อสรุปนี้จะเป็นประโยชน์อย่างยิ่งสำหรับองค์กรที่มีโปรแกรมการผลิตที่มั่นคงเช่น
    แผนการผลิต



    
    สูงสุด