ইমাকস কি দূরবর্তী এইচপিসি নোডের একটি ইন্টারেক্টিভ সেশনে চালানোর জন্য ট্রাম্প ব্যবহার করতে পারে?


12

আমি এইচপিসি কম্পিউটারগুলিতে রিমোট ফাইলগুলি লোড করতে এবং রিমোট আর প্রক্রিয়া চালাতে ইএসএস এবং ট্রাম্প সহ ইম্যাক্স ব্যবহার করে আসছি। Ssh কী দিয়ে ট্রাম্প একটি আর সেশন শুরু করার পরে C-x C-fফাইল সন্ধান করা এটিকে সহজ করে তোলে ।/ssh:myserver:/path/to/fileM-x R

তবে, এইচপিসি কম্পিউটারগুলিতে যে কোনও কাজের শিড্যুলিং সিস্টেম ব্যবহার করে (যেমন সান গ্রিড ইঞ্জিন বা টর্ক) হেড নোডে কতটা মেমরি এবং সিপিইউ ব্যবহার করা যেতে পারে তার উপর বিধিনিষেধ রয়েছে, তাই আমাকে ব্যবহার করে একটি ইন্টারেক্টিভ সেশন চালু করতে হবে qsub -I

এসএসএস সংযোগ তৈরির পরে ট্র্যাভেল, এসএসএস এবং / অথবা ইম্যাকস কনফিগার করা কোন স্লেভ নোডে (ব্যবহার qsub -Iবা সমতুল্য) ইন্টারেক্টিভ সেশন শুরু করার জন্য?


সীমাবদ্ধতা কী তা আমি পুরোপুরি নিশ্চিত নই?
পাইথননট

@ পাইথননট আমি ট্র্যাম্প ব্যবহার করে হেড নোডে এসশ করতে পারি, তবে স্লেভ নোডের সাথে কীভাবে সংযোগ স্থাপন করতে হয় তা (যা এসএসএসের মাধ্যমে সরাসরি অ্যাক্সেসযোগ্য নয়) জানি না।
ডেভিড লেবাউর

ESS কে প্রথমে আলাদা শেল চালু করার কথা বলা সম্ভব বলে মনে হচ্ছে না, তবে tramp-remote-shellসেট করার সাথে qrshবা qloginআপনি একটি ইন্টারেক্টিভ ক্লাস্টার সেশন পেতে সক্ষম হতে পারেন।
রেকাদো

উত্তর:


5

মনে হচ্ছে আপনার প্রসারিত হওয়া উচিত tramp-methods, একটি নতুন পদ্ধতি যুক্ত করা যা পদ্ধতির অনুরূপ sudoতবে qsub -Iপরিবর্তে ব্যবহার করে। তারপরে আপনি প্রথমে হেড নোডের সাথে সংযোগ করতে এবং তারপরে একটি কম্পিউট নোডের সাথে সংযোগ স্থাপনের জন্য একটি মাল্টি-হপ ট্র্যাম্প পথ ব্যবহার করতে সক্ষম হবেন।

এটা চেষ্টা কর:

(add-to-list 'tramp-methods
  '("qsub"
    (tramp-login-program        "qsub")
    (tramp-login-args           (("-I"))) ; other options here?
    ;; Local $SHELL could be a nasty one, like zsh or fish.  Let's override it.
    (tramp-login-env            (("SHELL") ("/bin/sh")))
    (tramp-remote-shell         "/bin/sh")
    (tramp-remote-shell-args    ("-c"))
    (tramp-connection-timeout   10)))

আপনি তখন ট্রাম্পের মতো পথ ব্যবহার করবেন /ssh:myserver|qsub:myserver:/path/to/file

আপনার কিউসুব পাস করার জন্য অন্যান্য বিকল্পগুলি নির্দিষ্ট করতে হবে; আমি এটি ব্যবহার করি নি তাই আমি আপনাকে সেখানে সাহায্য করতে পারি না। ট্র্যাম্প পদ্ধতিতে আপনি নির্দিষ্ট করতে পারেন এমন অন্যান্য বিকল্পগুলিও দেখতে চান; tramp.el তালিকাভুক্ত কয়েক ডজন আছে।


3

আমিও তাই করতে লড়াই করে যাচ্ছি। আমি একটি পৃথক রুট পেয়েছি যা আমাকে মূলত একই জিনিসটি করতে দেয়।

আপনি M-x shellসেখান থেকে শেল বাফারটি খুলতে এবং সেখান থেকে লগইন নোডের সাথে সংযোগ স্থাপন করতে পারেন এবং তারপরে ইন্টারেক্টিভ সেশনে সংযোগ স্থাপন করতে পারেন qsub -I। আপনি ইন্টারেক্টিভ সেশনে একবার, কমান্ডটি টাইপ করে একটি আর সেশন শুরু করুন R। সেখানে, আপনি করতে পারেন M-x ess-remote। আপনি কোন প্রোগ্রামটি চালাতে চান তা জিজ্ঞাসা করে একটি মিনি-বাফারকে অনুরোধ জানানো হবে (আর, এস +, স্টাটা ইত্যাদি) একবার আপনি আর নির্বাচন করলে, আপনি যেমন স্থানীয় মেশিনে ইএসএস ব্যবহার করেন তেমনই আপনি রিমোট শেলের উপর আর সেশনটি ব্যবহার করতে পারেন।

আমি ব্যক্তিগতভাবে এটিতে ট্রাম্প করে (একটি পৃথক উইন্ডোতে) রিমোট নোডে সংরক্ষিত রুপলিপিগুলি খুলি এবং ess-remoteউপরে বর্ণিত হিসাবে সংযুক্ত আর সেশনটির সাথে কাজ করি । এইভাবে, আর সেশনটি আমি যে রুপির সাথে কাজ করছি তার সাথে সরাসরি যোগাযোগ করতে পারে। (উদাহরণস্বরূপ, source('code.R')আর-এ কমান্ড এইচপিসি ক্লাস্টারে 'কোড.আর' পড়তে সক্ষম হবে, যা আমি সবেমাত্র সম্পাদনা করেছি instead আমি যদি এর পরিবর্তে আমার স্থানীয় মেশিনে রুপলিপি সম্পাদনা করতাম, তবে আরএস-র রিমোট সেশনটি হবে না) আমি প্রতিবার দূরবর্তী নোডে আপলোড না করে সেগুলি পড়তে সক্ষম হব না))

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.