Đây là lệnh NPlam2 có thể chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình mô phỏng trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS
CHƯƠNG TRÌNH:
TÊN
NetPIPE - Netcông việc Pbệnh hoạn Iđộc lập Psự sai lệch Engười định giá
SYNOPSIS
NPtcp [-h tên người nhận] [-b TCP_buffer_size] [tùy chọn]
mpirun [-tập tin máy danh sách người dẫn chương trình] -np 2 NPmpi [-a] [-S] [-z] [tùy chọn]
mpirun [-tập tin máy danh sách người dẫn chương trình] -np 2 NPmpi2 [-f] [-g] [tùy chọn]
NPpvm [tùy chọn]
Xem phần KIỂM TRA bên dưới để có mô tả đầy đủ hơn về cách chạy NetPIPE trong
mỗi môi trường. Phần TÙY CHỌN mô tả các tùy chọn chung có sẵn cho tất cả
các mô-đun. Xem tệp README từ tar-ball tại
http://www.scl.ameslab.gov/Projects/NetPIPE/ để có tài liệu về InfiniBand, GM,
Các mô-đun SHMEM, LAPI và memcpy.
MÔ TẢ
NetPIPE sử dụng một loạt các bài kiểm tra bóng bàn đơn giản trên một loạt các kích thước tin nhắn để cung cấp
đo lường đầy đủ về hiệu suất của một mạng. Nó trả lại các tin nhắn có kích thước ngày càng tăng
giữa hai quá trình, cho dù trên một mạng hoặc trong một hệ thống SMP. Kích thước tin nhắn
được chọn trong khoảng thời gian đều đặn, và có chút xáo trộn, để cung cấp
đánh giá hệ thống thông tin liên lạc. Mỗi điểm dữ liệu bao gồm nhiều bài kiểm tra bóng bàn để
cung cấp một thời gian chính xác. Độ trễ được tính bằng cách chia thời gian của chuyến đi khứ hồi cho
một nửa cho các tin nhắn nhỏ (dưới 64 Byte).
Thời gian giao tiếp cho các tin nhắn nhỏ bị chi phối bởi chi phí trong
các lớp giao tiếp, nghĩa là quá trình truyền bị ràng buộc về độ trễ. Đối với lớn hơn
thông báo, tốc độ truyền thông trở thành băng thông bị giới hạn bởi một số thành phần trong
hệ thống con giao tiếp (bus PCI, liên kết card mạng, chuyển mạch mạng).
Các phép đo này có thể được thực hiện ở lớp truyền thông báo (MPI, MPI-2 và PVM) hoặc tại
các lớp truyền thông gốc chạy trên (TCP / IP, GM cho thẻ Myrinet,
InfiniBand, SHMEM cho hệ thống Cray T3E và LAPI cho hệ thống IBM SP). Công việc gần đây là
nhằm mục đích đo lường một số thuộc tính hệ thống nội bộ chẳng hạn như mô-đun memcpy
đo tốc độ sao chép của bộ nhớ trong hoặc mô-đun đĩa đang được phát triển để đo lường
hiệu suất cho các thiết bị I / O khác nhau.
Một số cách sử dụng NetPIPE bao gồm:
So sánh độ trễ và thông lượng tối đa của các card mạng khác nhau.
So sánh hiệu suất giữa các loại mạng khác nhau.
Tìm kiếm sự kém hiệu quả trong lớp truyền thông báo bằng cách so sánh nó với lớp
lớp giao tiếp bản địa.
Tối ưu hóa lớp truyền thông báo và điều chỉnh các thông số hệ điều hành và trình điều khiển để tối ưu
hiệu suất của hệ thống con giao tiếp.
NetPIPE được cung cấp với nhiều mô-đun cho phép nó giao tiếp với nhiều loại
các tầng giao tiếp. Khá dễ dàng để viết các giao diện mới cho các giao diện đáng tin cậy khác
giao thức bằng cách sử dụng các mô-đun hiện có làm ví dụ.
THỬ NGHIỆM TCP
NPtcp hiện có thể được khởi chạy theo hai cách, bằng cách khởi động NPtcp theo cách thủ công trên cả hai hệ thống hoặc bằng cách
bằng cách sử dụng một tập lệnh nplaunch. Để khởi động NPtcp theo cách thủ công, bộ thu NetPIPE phải được khởi động
đầu tiên trên hệ thống từ xa bằng cách sử dụng lệnh:
NPtcp [tùy chọn]
sau đó máy phát chính được khởi động trên hệ thống cục bộ bằng lệnh
NPtcp -h tên người nhận [tùy chọn]
Bất kỳ tùy chọn nào được sử dụng phải giống nhau ở cả hai bên.
Tập lệnh nplaunch sử dụng ssh để khởi chạy bộ thu từ xa trước khi bắt đầu cục bộ
hệ thống điều khiển. Để sử dụng rsh, chỉ cần thay đổi tập lệnh nplaunch.
nplaunch NPtcp -h tên người nhận [tùy chọn]
Sản phẩm -b TCP_buffer_size tùy chọn đặt kích thước bộ đệm ổ cắm TCP, rất có thể
ảnh hưởng đến thông lượng tối đa trên một số hệ thống. Biểu đồ thông lượng làm phẳng
đột ngột có thể là dấu hiệu của việc hiệu suất bị giới hạn bởi kích thước bộ đệm ổ cắm.
THỬ NGHIỆM Bộ KH & ĐT và MPI-2
Việc sử dụng giao diện MPI cho NetPIPE phụ thuộc vào việc triển khai MPI đang được sử dụng. Tất cả các
sẽ yêu cầu số lượng quy trình được chỉ định, thường là -np 2 tranh luận.
Môi trường cụm có thể yêu cầu danh sách các máy chủ đang được sử dụng khi mỗi công việc được chạy.
Đặt danh sách các máy chủ trong danh sách máy chủ lưu trữ, sau đó, đối với OpenMPI, hãy chạy NetPIPE bằng cách sử dụng:
mpirun --hostfile danh sách người dẫn chương trình -np 2 NPmpi [Tùy chọn NetPIPE]
Để sử dụng MPICH2 thay thế:
mpirun -machinefile danh sách người dẫn chương trình -np 2 NPmpi [Tùy chọn NetPIPE]
Để kiểm tra giao tiếp 1 mặt của tiêu chuẩn MPI-2, hãy biên dịch bằng cách sử dụng:
làm cho mpi2
Chạy như mô tả ở trên và MPI sẽ sử dụng lệnh gọi MPI_Put () 1 mặt theo cả hai hướng,
với mỗi bộ thu bị chặn cho đến khi byte cuối cùng được ghi đè trước khi trả về
nhắn lại. Sử dụng -f tùy chọn buộc sử dụng hàng rào để chặn thay vì
ghi đè byte cuối cùng. Các -g tùy chọn sẽ sử dụng các hàm MP_Get () để chuyển
dữ liệu chứ không phải MP_Put ().
THỬ NGHIỆM MVP
Khởi động hệ thống pvm bằng:
pvm
và thêm một máy thứ hai bằng lệnh PVM
thêm vào tên người nhận
Thoát khỏi giao diện dòng lệnh PVM bằng cách sử dụng thoát, sau đó chạy bộ thu PVM NetPIPE trên một
hệ thống với lệnh:
NPpvm [tùy chọn]
và chạy bộ phát TCP NetPIPE trên hệ thống khác bằng lệnh:
NPpvm -h người nhận hostname [tùy chọn]
Bất kỳ tùy chọn nào được sử dụng phải giống nhau ở cả hai bên. Tập lệnh nplaunch cũng có thể được sử dụng
với NPpvm như đã mô tả ở trên cho NPtcp.
THỬ NGHIỆM PHƯƠNG PHÁP
NetPIPE kiểm tra hiệu suất mạng bằng cách gửi một số tin nhắn ở mỗi kích thước khối,
bắt đầu từ giới hạn dưới về kích thước thư.
Kích thước thư được tăng lên cho đến khi đạt đến giới hạn trên của kích thước thư hoặc
thời gian để truyền một khối vượt quá một giây, điều này luôn xảy ra trước tiên. Kích thước tin nhắn
được chọn trong các khoảng thời gian đều đặn và có những xáo trộn nhỏ từ chúng để cung cấp thêm
đánh giá hoàn chỉnh hệ thống con giao tiếp.
Sản phẩm NetPIPE tệp đầu ra có thể được vẽ biểu đồ bằng cách sử dụng một chương trình như gnuplot(1). Đầu ra
tệp chứa ba cột: số byte trong khối, tốc độ truyền tính bằng bit
mỗi giây và thời gian chuyển khối (một nửa thời gian khứ hồi). Hai cái đầu tiên
cột thường được sử dụng để vẽ biểu đồ thông lượng so với kích thước khối, trong khi cột thứ ba
cung cấp độ trễ. Ví dụ, thông lượng so với chặn kích thước đồ thị có thể được tạo
bằng cách vẽ đồ thị byte so với bit trên giây. Mẫu vật gnuplot(1) lệnh cho một đồ thị như vậy
sẽ là
đặt logcale x
âm mưu "np.out"
LỰA CHỌN
-a chế độ không đồng bộ: nhận tiền đăng (mô-đun MPI, IB)
-b TCP_buffer_size
Đặt kích thước bộ đệm TCP gửi và nhận (chỉ dành cho mô-đun TCP).
-B Chế độ Burst trong đó tất cả các lần nhận được đăng trước cùng một lúc (mô-đun MPI, IB).
-f Sử dụng hàng rào để chặn khi hoàn thành (chỉ dành cho mô-đun MPI2).
-g Sử dụng MPI_Get () thay vì MPI_Put () (chỉ dành cho mô-đun MPI2).
-h hostname
Chỉ định tên của máy chủ nhận để kết nối (TCP, PVM, IB, GM).
-I Vô hiệu hóa bộ nhớ cache để đo hiệu suất mà không có hiệu ứng bộ nhớ cache (chủ yếu ảnh hưởng đến IB
và các mô-đun memcpy).
-i Thực hiện kiểm tra tính toàn vẹn thay vì đánh giá hiệu suất.
-l start_msg_size
Chỉ định giới hạn dưới cho kích thước của thư sẽ được kiểm tra.
-n lặp đi lặp lại
Đặt số lần lặp lại cho mỗi bài kiểm tra thành một hằng số. Nếu không, số lượng
số lần lặp lại được chọn để cung cấp thời gian chính xác cho mỗi bài kiểm tra. Hãy rất cẩn thận nếu
chỉ định một số thấp để thời gian cho bài kiểm tra bóng bàn vượt quá bộ đếm thời gian
chính xác.
-O source_offset, dest_offset
Chỉ định hiệu số nguồn và đích của bộ đệm từ trang hoàn hảo
căn chỉnh.
-o tên tệp xuất ra
Chỉ định tên tệp đầu ra (mặc định là np.out).
-p nhiễu loạn_size
NetPIPE chọn kích thước tin nhắn đều đặn, tăng chúng
theo cấp số nhân từ cận dưới lên cận trên. Tại mỗi thời điểm, nó
cũng kiểm tra nhiễu loạn 3 byte trên và 3 byte dưới mỗi điểm kiểm tra để tìm
đặc quyền trong hệ thống. Giá trị nhiễu loạn này có thể được thay đổi bằng cách sử dụng -p
tùy chọn hoặc tắt bằng cách sử dụng -p 0 .
-r Tùy chọn này đặt lại các ổ cắm TCP sau mỗi lần kiểm tra (chỉ dành cho mô-đun TCP). Nó là
cần thiết cho một số kiểm tra phát trực tuyến để có được các phép đo tốt kể từ cửa sổ ổ cắm
kích thước có thể sụp đổ nếu không.
-s Đặt chế độ phát trực tuyến trong đó dữ liệu chỉ được truyền theo một hướng.
-S Sử dụng gửi đồng bộ (chỉ mô-đun MPI).
-u giới hạn trên
Chỉ định ranh giới trên cho kích thước của thư đang được kiểm tra. Theo mặc định,
NetPIPE sẽ dừng khi thời gian truyền khối vượt quá một giây.
-z Nhận tin nhắn bằng MPI_ANY_SOURCE (chỉ dành cho mô-đun MPI)
-2 Đặt chế độ hai chiều trong đó cả hai bên gửi và nhận cùng một lúc
(được hỗ trợ bởi hầu hết các mô-đun). Bạn có thể cần sử dụng -a để chọn không đồng bộ
thông tin liên lạc cho Bộ KH & ĐT để tránh tình trạng đóng băng. Đối với TCP, kích thước thử nghiệm tối đa sẽ là
bị giới hạn bởi kích thước bộ đệm TCP.
Sử dụng NPlam2 trực tuyến bằng dịch vụ onworks.net