কমান্ড লাইন থেকে কীভাবে ইন্টেল আর্কিটেকচার পরিবারটি খুঁজে পাবেন


28

পারফরম্যান্স যাচাই করার জন্য আমি কয়েকটি সিওন মেশিনে অ্যাক্সেস পাই। তারা কী আর্কিটেকচার ব্যবহার করছে যেমন হ্যাসওয়েল, স্যান্ডিব্রিজ, আইভিব্রিজ। এটি খুঁজে বের করার জন্য কোনও আদেশ আছে কি?


2
/proc/cpuinfoপ্রকৃতপক্ষে মডেলটির নাম দেয় Intel (R) blah blah blah GHz, আপনার এটি সরাসরি গুগল করা উচিত।
আর্থার 2e5

আমি আর্কিটেকচার পরিবারের জন্য জিজ্ঞাসা করছিলাম
একজন কৌতূহলী প্রকৌশলী

1
আমি মনে করি না যে "আর্কিটেকচার পরিবার" রিপোর্ট করা হয়েছে, তারা কেবল বাণিজ্যিক নাম। আপনি মডেলটির নামটি পেয়ে যান /proc/cpuinfo, আমি মনে করি এটি সংশ্লিষ্ট পরিবারের নামের সাথে অনুবাদ করা আপনার পক্ষে হবে।
গিলস 'অশুভ হওয়া বন্ধ করুন'

@ আইজভান্টটোকোড এই বাণিজ্যিক নামগুলির জন্য আপনাকে কিছু ধরণের টেবিল ব্যবহার করতে হবে।
আর্থার 2e5

উত্তর:


45

এটি একটি সস্তা সস্তা কাজ কিছুটা হলেও আপনি জিসিসি থেকে তথ্যটি পেতে পারেন! আমি ব্যাখ্যা করব: জিসিসি প্রতিটি সাবার্কের জন্য-মার্চ বিকল্পের সাথে বাইনারিগুলি অনুকূল করতে সক্ষম। তদুপরি, এটি আপনার সনাক্ত করতে সক্ষম হয় এবং স্বয়ংক্রিয়ভাবে আপনার মেশিনের সাথে-মার্চ = নেটিভ অনুমানের সাথে অনুকূল করে তুলতে, আপনাকে কেবল মার্চ = নেটিভ সহ জিসিসি কল করতে হবে এবং এটি কী ফ্ল্যাগগুলি ব্যবহার করবে তা জিজ্ঞাসা করতে হবে: সংক্ষেপে

gcc -march=native -Q --help=target|grep march

আমার জন্য এটা দেয়

-march=                               bdver1

তবে আমার পিসি একটি অ্যামড বুলডোজার প্রসেসর দিয়ে চলে


আপনার সমাধান প্রশ্নের উত্তর। এটা আমার জন্য কাজ করে.
এজেএন

এটি আমার broadwellপরিবর্তে ফিরে আসায় কাজ করে না kabylake। এটি সম্ভবত কারণ আমার সিসির সংস্করণটি এসেম্বলি তৈরি করার সময় সেই দুটি পরিবারকে আলাদা করতে পারে না।
টাইলো

জিসিসি 8 স্কাইলেকে সনাক্ত করতে পারে যেখানে জিসিসি 5 ব্রডওয়েল হিসাবে চিহ্নিত করে, প্রকৃতপক্ষে।
এরিক

8

আপনি সম্ভবত পারেন না কারণ এগুলি বাণিজ্যিক বিক্রয়ের জন্য বিপণনের নাম, "প্রযুক্তিগত" নাম নয়।

তবে, আপনি dmidecode থেকে যা প্রয়োজন তা পেতে এবং তারপরে বাণিজ্যিক পরিবার নির্ধারণ করতে http://ark.intel.com (আপনার জিয়ন প্রসেসরের জন্য) দেখতে পারেন visit

[root@mediasrv ~]# dmidecode|grep -i intel
        Socket Designation: Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
        Manufacturer: Intel
        Version: Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz

সেই আউটপুট থেকে, আমি ইন্টেলের সিন্দুকের ওয়েবসাইটটি দেখতে এবং 3770 সিপিইউ অনুসন্ধান করতে পারি, যা আমাকে বলবে আমার আইভি ব্রিজ চিপ রয়েছে।


1
এটা একটি স্ক্রিপ্ট আমি dmidecode বা জন্য / proc / cpuinfo ব্যবহার এবং grep বা awk বা Perl এবং উইকিপিডিয়া আপনি curl অথবা wget সঙ্গে পেতে উপর Xeon cpu 'র তালিকার মুদ্রণযোগ্য সংস্করণ সঙ্গে এটি একত্রিত হবে সঙ্গে স্বয়ংক্রিয় জন্য: en.wikipedia.org/ ডব্লু / ...
এরিক

5

নীচে একটি বাশ স্ক্রিপ্ট রয়েছে যা স্বয়ংক্রিয়ভাবে আপনার সিপিইউ /proc/cpuinfoএবং https://ark.intel.com/ ব্যবহার করে আর্কিটেকচার কোডের নামটি সন্ধান করে । কাজ করার জন্য আপনার পুপ ইনস্টল করা দরকার।

আমার কম্পিউটারে কোড চালাচ্ছি আমি নিম্নলিখিত ফলাফল পেয়েছি:

$ ./intel_codename
Processor name: i7-7700HQ
Kaby Lake

#!/bin/bash

set -euo pipefail

if [[ $# == 0 ]]; then
    modelname=$(cat /proc/cpuinfo | grep 'model name' | head -1)
    if ! grep Intel <<<"$modelname" > /dev/null; then
        echo "You don't seem to have an Intel processor" >&2
        exit 1
    fi

    name=$(sed 's/.*\s\(\S*\) CPU.*/\1/' <<<"$modelname")
    echo "Processor name: $name" >&2
else
    name=$1
fi

links=($(curl --silent "https://ark.intel.com/search?q=$name" | pup '.result-title a attr{href}'))

results=${#links[@]}
if [[ $results == 0 ]]; then
    echo "No results found" >&2
    exit 1
fi

link=${links[0]}
if [[ $results != 1 ]]; then
    echo "Warning: $results results found" >&2
    echo "Using: $link" >&2
fi

url="https://ark.intel.com$link"
codename=$(curl --silent "$url" | pup '.CodeNameText .value text{}' | xargs | sed 's/Products formerly //')

echo "$codename"

এটি কাজ করে এবং @ এরিকের পরামর্শ অনুসারে কাজ করে!
পানায়োটিস

5

এই ডেটা PMU_NAME এ সঞ্চিত আছে, কেবল টাইপ করুন:

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