我正在編寫一個並行構建場,以針對各種平臺/環境構建C++跨平臺應用程序。每次將新代碼推送到git倉庫時,我都會針對所有平臺構建和測試最新的代碼。GNU並行主機粘性作業
我已經安裝了並行設備,使用--sshlogin選項在幾臺主機之間正確分配作業。 我傳輸文件,收集輸出和結果。這一切都工作得很好,我喜歡這個工具。
對於某些平臺,構建時間有時相當長,我希望構建儘可能增量。
我唯一的問題是,如果調度程序將作業發送到同一臺計算機並在此特定主機上重複使用先前構建的工件,則構建僅爲增量。
說我有3個主機,我有1個機會在3爲建設增量。如果主機一段時間沒有構建這個平臺,則可能需要很長時間。
是否有可能獲得對主機的控制權,一個特定的輸入源將在其上運行並且只有在主機繁忙時纔回退到其他主機?
理想情況下,我很希望看到一個標籤系統,在該標籤系統中,我將輸入源標記爲名稱並標記多個具有名稱的主機,從而創建專用於該類型構建的作業池和池池。
但是一個非常簡單的實現,其中輸入源以與sshlogins的定義順序相同的順序進行分發,在我的情況下可以是一個簡單的&快速修復。
我試圖找到自己實現它的源代碼,但是當我瀏覽Savannah上的代碼時,我只能看到文檔生成。
任何想法?
感謝,
中號