স্পিডআপ ইন্টেলিজ-আইডিয়া


92

আমি স্কেলাল উন্নয়নের জন্য ইন্টেলিজ ব্যবহার করছি এবং গত সপ্তাহে 8 গিগাবাইট নতুন র‌্যাম পেয়েছি , তাই আমি ভেবেছিলাম: এটি ব্যবহারের সময়। আমি আমার টাস্ক ম্যানেজার চেক করা এবং ব্যবহার intelliJ পাওয়া 250MB ~ । গ্রহন থেকে আমি জানতাম যে জেভিএম বিকল্পগুলি টুইটগুলি গতি উন্নত করতে অনেক সাহায্য করেছে, তাই আমি গুগল করেছিলাম ...

ওএস এক্স এর জন্য এটি পেয়েছি আমি তত্ক্ষণাত্ জেভিএম বিকল্পটি খুঁজে পেলাম না, তাই আমি এক্সএমএক্সকে টুইট করা শুরু করলাম। 1 গিগাবাইটে, আমি বুঝতে পারি যে এটি আর শুরু করে না। আমি ইন্টেলিজ জাভা সংস্করণটি পরীক্ষা করে দেখেছি এটি পুরানো এবং 32 বিটের।

সুতরাং আপনার বর্তমান জেডিকে এবং bit৪ বিটটি ব্যবহার করতে আপনাকে আপনার লিঙ্কটি এ থেকে পরিবর্তন করতে হবে:

IntelliJ IDEA Community Edition 10.0.2\bin\idea.exe

প্রতি

IntelliJ IDEA Community Edition 10.0.2\bin\idea.BAT

এবং "স্টার্ট ইন" সামঞ্জস্য করুন

ব্যাট সন্ধান করে JDK_HOMEএবং এখন 64 বিট ব্যবহার করে।

আমার বর্তমান ভিএম বিকল্পগুলি যা অবস্থিত

...\IntelliJ IDEA Community Edition 10.0.2\bin\idea.exe.vmoptions

হয়

-Xms512m
-Xmx1024m
-XX:MaxPermSize=512m
-ea
-server
-XX:+DoEscapeAnalysis
-XX:+UseCompressedOops
-XX:+UnlockExperimentalVMOptions
-XX:+UseParallelGC

পরিবর্তে -XX:+UseParallelGC, আপনি ব্যবহার করতে পারেন -XX:+UseConcMarkSweepGC, যা

ডেস্কটপ অ্যাপ্লিকেশনগুলির জন্য গ্রহণযোগ্য পছন্দ, তবে আমি সম্প্রতি থ্রুপুট সংগ্রহে পরিবর্তিত হয়েছি। কারণ একটি দ্রুত মেশিন এবং একটি পর্যাপ্ত পরিমাণে স্তূপ রয়েছে, আপনার কাছে দ্রুত বিরতি, আরও থ্রুপুট এবং টুকরো টুকরো সমস্যা নেই (আইজুমা। # স্কালা)

পরিবর্তনগুলি:

-XX:+UseConcMarkSweepGC //removed
// removed, because not needed with the lastest JVM.
    -XX:+UnlockExperimentalVMOptions
    -XX:+DoEscapeAnalysis
    -XX:+UseCompressedOops

আমি আপাতত এই বিকল্পগুলিতে আটকে থাকব। আমি এটির সাথে আপনার অভিজ্ঞতাটি জানতে চাই would

কোন বিকল্পগুলি আপনার পক্ষে সবচেয়ে ভাল কাজ করে? এর মাধ্যমে ইন্টেলিজি চলাকালীন আমি কীভাবে এই সেন্টিমিডি উইন্ডোটি আড়াল করব .bat? :)

যাইহোক, ইন্টেলিজজে সুর করার জন্য এখানে অন্য লিঙ্ক । মূলত এটি সিস্টেম ডায়ারগুলির জন্য উইন্ডোজ পুনরুদ্ধার এবং অ্যান্টিভাইরাস বন্ধ করতে p.20 / 21 তে বলেছে ।

আপ intelliJ গতি আরেকটি পথে সিস্টেম ফোল্ডারের intellij করা হয় ramdrive (| জ ধন্যবাদ OlegYch)।

from idea.properties 
idea.system.path=${idea.home}/.IntelliJIdea/system

দেখুন উইন 7 64bit র্যাম ড্রাইভ এর জন্য superuser বা এই এক । আমার জন্য 1 জিবি ঠিক আছে।

বন্ধু আমাকে আরও একটি ইঙ্গিত দিয়েছিল সেটি হল আপনার অ্যান্টিভাইরাস থেকে প্রকল্পের ডিরেক্টরিগুলি বাদ দেওয়া (অ্যাক্সেসে স্ক্যান করা)

টিউনিং অ্যালিপ্স সম্পর্কিত একই রকম পোস্ট রয়েছে:


6
যদি bit৪ বিটের সংস্করণটি চালিত হয় তবে ভিএম অপশনগুলি পড়তে চলেছেidea64.exe.vmoptions
আরনাড পি

আমি একটি অনুরূপ প্রশ্ন যুক্ত করেছি, তবে 32-বিট ওএস (উইন্ডোজ 7) এবং 3 জিবি র‌্যামের জন্য: ইন্টেলিজ আইডিইএ 13.1 -
-তে

.Bat ফাইলের পরিবর্তে সরাসরি "ধারণা 64.exe" চালাবেন না কেন? (অন্ততপক্ষে ইন্টেলিজিজ আইডিয়াতে ধারণা 64.exe আছে?
jbarrameda

উত্তর:


33

এই সংমিশ্রণটি মাভেরিক্সে চলমান আমার ইন্টেলিজ 13 এ দুর্দান্ত কাজ করে:

জুলাই 18, 2017 আপডেট হয়েছে :

# custom IntelliJ IDEA VM options

-ea
-server
-Xms2G
-Xmx4096M
-Xss2m
-XX:MaxMetaspaceSize=2G
-XX:ReservedCodeCacheSize=1G
-XX:MetaspaceSize=512m
-XX:+UseConcMarkSweepGC
-XX:+DoEscapeAnalysis
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:+UnlockExperimentalVMOptions
-Djava.net.preferIPv4Stack=true
-Dsun.io.useCanonCaches=false
-XX:LargePageSizeInBytes=256m
-XX:+UseCodeCacheFlushing
-XX:ParallelGCThreads=8
-XX:+DisableExplicitGC
-XX:+ExplicitGCInvokesConcurrent
-XX:+PrintGCDetails
-XX:+PrintFlagsFinal
-XX:+AggressiveOpts
-XX:+CMSClassUnloadingEnabled
-XX:CMSInitiatingOccupancyFraction=60
-XX:+CMSClassUnloadingEnabled
-XX:+CMSParallelRemarkEnabled
-XX:+UseAdaptiveGCBoundary
-XX:+UseSplitVerifier
-XX:CompileThreshold=10000
-XX:+OptimizeStringConcat
-XX:+UseStringCache
-XX:+UseFastAccessorMethods
-XX:+UnlockDiagnosticVMOptions
-XX:+HeapDumpOnOutOfMemoryError
-XX:+UseCompressedOops
-XX:-OmitStackTraceInFastThrow
-Dawt.useSystemAAFontSettings=lcd

-Dsun.java2d.renderer=sun.java2d.marlin.MarlinRenderingEngine

আমি এই সেটিংটি https://github.com/adben/config/blob/master/idea64.vmoptions- এ আপডেট করে রাখছি


4
আপনি সেখানে প্রতিলিপিকরণ এর plent আছে
vach

4
-XX:+UseCompressedStringsআপনার তালিকার সমস্তটির মধ্যে এইটিকে সাবধান করুন, এটি আমার জন্য এটি ভেঙে দিয়েছে, বাকিরা কাজ করেছিল।
3:38 এ ব্লেবম্ব করুন

4
ধন্যবাদ @ অ্যাডবেন, এটি আমার পিসিতে আইজে উন্নত করেছে। কিন্তু আমি মুছে ফেলার জন্য ছিল MaxMetaspaceSize, MetaspaceSize, UseCompressedStringsকারণ তারা লিনাক্স, x86_64 উপর অপব্যবহার 14 সমর্থিত নয়। UseCompressedOopsআমার জন্য কাজ করে না। ইঙ্গিত: ত্রুটি বার্তাগুলি দেখার জন্য কমান্ড লাইন থেকে আইজে চালান, এটি লিনাক্সেidea.sh
মিক্সাজ

4
-এক্সএক্স: + ইউজকম্প্রেসড স্ট্রিংস এটি আমার জন্য উইন 8 এক্স 64 এবং আইডিইএ 64-বিট সংস্করণে ভেঙেছে। অন্য সব কিছু ঠিক আছে বলে মনে হচ্ছে।
মিনর্গোদ

এই ফাইলটি প্রথম স্থানে সম্পাদনা করতে, সন্ধানের ক্রিয়া পপআপের জন্য কেবল Ctrl + Shift + A টিপুন এবং " কাস্টম ভিএম বিকল্পগুলি সম্পাদনা করুন " টাইপ করুন । এটি স্বয়ংক্রিয়ভাবে আপনার মেশিনের জন্য সঠিক ফাইল তৈরি করবে যা আপনি সম্পাদনা করতে পারেন।
কেভিন কুপার 19

29

আমার জন্য এসএসডি-ড্রাইভের উন্নত পারফরম্যান্সে পরিবর্তন (বিশেষত বড় প্রকল্পগুলির জন্য)।


আমি স্পষ্টতই এসএসডি এবং একটি এইচডিডি সহ আইজে পারফরম্যান্সে যাচ্ছি!
গৌরব

23

কিছু সময় আগে আমি আমার প্রকল্পের সংকলনটি দ্রুতগতির উপায়গুলি সন্ধান করছিলাম এবং এটি ফলাফল। এটি নিজেই ইন্টেলিজ আইডিইএর জন্য নয় তবে (রি) একটি বড় প্রকল্প নির্মাণের সময় অনেকটা সহায়তা করবে এবং আমার ধারণা, এটি অন্য কোনও আইডিইগুলির সাথেও কাজ করবে। এছাড়াও, আমি লিনাক্স পদ্ধতির বর্ণনা দিয়েছি, তবে আমি নিশ্চিত যে উইন্ডোজের নিজস্ব র‌্যাম-ডিস্ক বাস্তবায়ন রয়েছে।

স্পিডআপ সংকলনের সহজতম উপায় হ'ল সংকলনের আউটপুটটি র‌্যাম ডিস্কে স্থানান্তর করা।

র‌্যাম ডিস্ক সেটআপ

খোলা fstab

$ sudo gedit /etc/fstab

(পরিবর্তে geditআপনি ব্যবহার করতে পারেন viবা যা আপনার পছন্দ করুন)

র‌্যাম ডিস্ক মাউন্ট পয়েন্ট সেট আপ করুন

আমি আমার সিস্টেমে বেশ কয়েকটি স্থানে র‌্যাম ডিস্ক ব্যবহার করছি এবং এর মধ্যে একটি হ'ল /tmpআমি আমার কম্পাইল আউটপুটটি কেবল সেখানে রেখে দেব:

tmpfs /var/tmp tmpfs defaults 0 0

/tmpএক্ষেত্রে আপনার ফাইল সিস্টেমের আকার বাধিত হবে না তবে এটি ঠিক আছে, আমার আকার এখনই M৩ এমবি। তবে যদি আপনি আশঙ্কা করেন যে র‌্যাম ডিস্কের আকারটি খুব বড় হয়ে যায় - আপনি এর আকারটি সীমাবদ্ধ করতে পারেন, যেমন:

tmpfs /var/tmp tmpfs defaults,size=512M 0 0

প্রকল্প সেটআপ

ইন্টেলিজ আইডিইএতে, প্রকল্পের কাঠামো খুলুন ( Ctrl+Alt+Shift+Sডিফল্টরূপে), তারপরে প্রজেক্ট - 'প্রকল্প সংকলক আউটপুট' এ যান এবং এটিকে র‌্যাম ডিস্ক মাউন্ট পয়েন্টে নিয়ে যান:

/tmp/projectName/out

(আমি projectNameযদি সেখানে পৌঁছানোর প্রয়োজন হয় বা একই সাথে বেশ কয়েকটি প্রকল্পের সাথে কাজ করব তবে সহজেই এটি সন্ধান করার জন্য আমি ফোল্ডারটি যুক্ত করেছি )

তারপরে, মডিউলগুলিতে যান এবং আপনার সমস্ত মডিউলগুলিতে পাথগুলিতে যান এবং 'ইনহেরিট প্রকল্পের সংকলন আউটপুট পাথ' নির্বাচন করুন বা আপনি যদি কাস্টম সংকলন আউটপুট পাথটি ব্যবহার করতে চান তবে 'আউটপুট পাথ' এবং 'টেস্ট আউটপুট পাথ' আপনি যেভাবে করেছিলেন তা পরিবর্তন করুন এটি পূর্বে সংকলক আউটপুট প্রকল্প।

ভাবী সবাই!

পিএস কয়েকটি সংখ্যা: আমার বর্তমান প্রকল্পের বিভিন্ন ক্ষেত্রে বিভিন্ন সংকলনের সময় (প্রায়):

HDD:     80s
SSD:     30s
SSD+RAM: 20s

পিপিএস যদি আপনি এসএসডি ডিস্ক ব্যবহার করেন, সংকলন স্পিডআপের পাশাপাশি আপনি আপনার ডিস্কে লেখার কাজ কমিয়ে দেবেন, সুতরাং এটি আপনার এসএসডিকে সুখীভাবে বাঁচতে সহায়তা করবে;)


রামের সমাধান দারুণ !! শুধু পারফরম্যান্সের জন্যই নয় এসএসডি জীবনের সময়কে রক্ষা করুন। ধন্যবাদ!
মোজতাবা Asg

আমি আমার cachesএবং indexফোল্ডারগুলি একটি র‌্যাম ডিস্কের সাথে প্রতীকী লিঙ্কের মাধ্যমে সরিয়েছি , র‌্যাম ড্রাইভে ইন্টেলিজ আইডিইএ ক্যাশে প্রতীকী লিঙ্ক ছাড়াই এটি করার অন্য একটি উপায়ের পরামর্শ দেয়, তবে এটির জন্য আরও বড় র‌্যাম ডিস্কের প্রয়োজন হবে কারণ আপনি কেবল ক্যাশে এবং সূচক ফোল্ডার নির্দিষ্ট করতে পারবেন না যা উপায় বলা বাহুল্য, কোনও সন্ধান / অনুসন্ধান / প্রতীককে ক্লিক করা এখন তাত্ক্ষণিক বা প্রায় তাত্ক্ষণিক
ycomp

উইন্ডোজ 10 এ এটি কীভাবে করবেন?
গৌরব

@ আইকম্প আপনি কীভাবে এটি করতে চান দয়া করে বিস্তারিত বলতে পারেন?
সার্জিওলিওন

আমি বিশেষভাবে মনে করতে পারি না, তবে এটি সম্ভবত এটির চেয়ে বেশি সমস্যা। যদিও এটি মন্দ ছিল দ্রুত। আমি মনে করতে পারি না যে এটির সাথে যুক্ত কোনও নির্দিষ্ট সমস্যা ছিল কিনা .. আমি অন্য পিসিতে স্থানান্তরিত হয়ে একবার এটি করা বন্ধ করে দিয়েছিলাম
ycomp

20

সংক্রান্ত:

.Bat এর মাধ্যমে ইন্টেলিজি চালানোর সময় আমি এই সেন্টিমিডি উইন্ডোটি কীভাবে আড়াল করব?

'স্টার্ট' কমান্ড এবং javaw.exe একসাথে ব্যবহার করুন, সুতরাং, যদি আপনার:

SET JAVA_EXE=%IDEA_JDK%\jre\bin\java.exe
...
"%JAVA_EXE%" %JVM_ARGS% -cp "%CLASS_PATH%" %IDEA_MAIN_CLASS_NAME% %*

এটিকে পরিবর্তন করুন:

SET JAVA_EXE=%IDEA_JDK%\jre\bin\javaw.exe
...
start "Intellij IDEA" /b "%JAVA_EXE%" %JVM_ARGS% -cp "%CLASS_PATH%" %IDEA_MAIN_CLASS_NAME% %*

19

ইন্টেলিজিজের জন্য আপনি সবচেয়ে দরকারী জিনিসটি হ'ল ডিস্ক ক্যাচিংয়ের জন্য প্রচুর ফ্রি মেমরি থাকা । ইন্টেলিজি ক্যাশেড ফাইলগুলিতে এর প্রসেসিং কাজের অনেকগুলি সঞ্চয় করে। আপনার যদি প্রচুর ফ্রি মেমরি থাকে তবে এটি ভাল কাজ করে তবে আপনার ডিস্ক ক্যাশেটি সীমাবদ্ধ থাকলে আপনি নিয়মিত দীর্ঘস্থায়ী বিরতি দেখতে পাবেন see

আমি -XX:+UseConcMarkSweepGCবরং পরামর্শ দিন G1

আমি ফাইল অ্যাক্সেসের বিলম্ব হ্রাস করতে ফাইলগুলির স্থানীয় অনুলিপিগুলিও কাজ করি।

বিটিডাব্লু : আমি যে প্রকল্পটি চালু করছি তার জন্য, আমি মেশিনে 24 গিগাবাইট এবং একটি 48 গিগাবাইটের সাথে কাজ করার মধ্যে পার্থক্য লক্ষ্য করেছি, যদিও সর্বোচ্চ গাদা 2 জিবি সেট করা রয়েছে;)


4
আমার জন্য, সবচেয়ে গুরুত্বপূর্ণ উপলব্ধি হ'ল এটি যখন থেমে যায় তখন এটি জিসির কারণে নয়, বরং ডিস্কের বাইরে ডেটা পুনরায় পড়তে হয়।
পিটার লরি

4
অতিরিক্ত র‌্যাম ব্যবহার করে ফাইল সিস্টেম / ওএস-লেভেল ক্যাচিংয়ের কারণে একটি 48 গিগাবাইট মেশিন এবং একটি 24 গিগাবাইট মেশিনের মধ্যে পার্থক্য দেখা দেয়।
সিডেসাক

4

আমি কিছু পরীক্ষা নিরীক্ষা করেছেন, দেখলেন হ্রাস যে জিসি একটু থামেন নিম্নলিখিত সমন্বয় সবচেয়ে ভাল কাজ করে: -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50

আমি গাদাটি খুব বেশি বড়ও করব না, 512 বা তার চেয়ে ছোটও আমার পক্ষে ঠিক। অন্যথায় এটি পূর্ণ হয়ে উঠলে জিসিকে কিছুটা সময় নিয়ে যেতে হবে।


2

আপনি এখানে ভাল টিপস পেতে পারেন। উদাহরণস্বরূপ, "সিঙ্ক্রোনাইজ ফাইলগুলি বন্ধ করুন" বৈশিষ্ট্যটি বন্ধ করার পরে আইডিইএ থেকে অন্য অ্যাপ্লিকেশনটিতে পরিবর্তনের গতি উল্লেখযোগ্যভাবে উন্নত হয়েছিল।

http://hamletdarcy.blogspot.com/2008/02/10-tips-to-increase-intellij-idea.html


2

এখনও কেন এটি উল্লেখ করা হয়নি তা নিশ্চিত নন - আপনি সক্ষম করতে পারবেন Power Save modeযা অনেকগুলি আইজে ব্যাকগ্রাউন্ড ক্রিয়াকলাপ বন্ধ করে দেয় Files Synchronization। কিছু নিবন্ধ বলছে যে প্রকল্প কাঠামোর বিকল্পগুলিতে ফাইল সিঙ্কটি অক্ষম করা সম্ভব (@ ওজে ২78৮ by এর উত্তরের নিবন্ধের মতো), তবে আমি এইজে 14 তে এই বিকল্পটি খুঁজে পাইনি , তবে Power Save modeএটি অক্ষম বলে মনে হচ্ছে।

আমার কাছে বেশ বড় কোড বেইস ( এওএসপি উত্স কোড) রয়েছে, তাই ব্যাকগ্রাউন্ড ফাইলগুলির সমন্বয়ের কারণে এইচডি ক্রিয়াকলাপ বিরক্তিকর ...


1

আপনি ইন্টেলিজের অপটিমাইজার প্লাগইন ব্যবহার করতে পারেন:

https://zeroturnaround.com/free/optimizer-for-intellij-idea/

প্লাগইন দিয়ে আপনি করতে পারেন:

  • স্বয়ংক্রিয় টিউন ভার্চুয়াল মেশিন বিকল্পগুলি
  • শ্রেণি যাচাইকরণ অক্ষম করুন
  • সিস্টেম ক্যাশে পরিষ্কার করুন
  • বাহ্যিক বিল্ড সরঞ্জামগুলি কনফিগার করুন
  • সর্বশেষতম ওরাকল জেডিকে যাচাই করুন
  • বিল্ড এড়িয়ে যান এবং পুনরায় চালনা করুন

ভোট কেন? প্রশ্নটি ইন্টেলিজ টিউন করার বিষয়ে এবং এটি একটি সমাধান
আইবার্ক

4
দুঃখের বিষয়, প্লাগইনটি টানা বলে মনে হচ্ছে।
নিলো ডি রক

1

প্রদত্ত উত্তরটি adbenআমার মেশিনের কার্যকারিতা উন্নত করতে খুব সহায়ক। যদিও আমি জোনোন নিবন্ধ পড়ে এটি সামান্যই ওভাররাইড করেছি,

-server
-Xms2g
-Xmx2g
-XX:NewRatio=3
-Xss16m
-XX:+UseConcMarkSweepGC
-XX:+CMSParallelRemarkEnabled
-XX:ConcGCThreads=4
-XX:ReservedCodeCacheSize=240m
-XX:+AlwaysPreTouch
-XX:+TieredCompilation
-XX:+UseCompressedOops
-XX:SoftRefLRUPolicyMSPerMB=50
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djsse.enableSNIExtension=false
-ea

উপরের কনফিগারেশনটি ব্যবহার করে তারা বড় প্রকল্পগুলির কার্যকারিতা উন্নত করেছে এবং আমাদের প্রকল্পগুলির জন্যও নির্দ্বিধায় কাজ করে। শেষ অবধি, আমি যে সমস্ত প্লাগইন ব্যবহার করব না তা অক্ষম করে দিয়েছি এবং এটি জিনিসগুলিকেও উন্নত করে।

তথ্যসূত্র: https://dzone.com/articles/the-one-and-only-reason-to-customize-intellij-idea


0

আমি এই সংমিশ্রণটি ব্যবহার করেছি এবং এটি আমার পরিবেশে ভাল কাজ করছে

-server
-Xms2048m
-Xmx2048m
-XX:NewSize=512m
-XX:MaxNewSize=512m
-XX:PermSize=512m
-XX:MaxPermSize=512m
-XX:+UseParNewGC
-XX:ParallelGCThreads=4
-XX:MaxTenuringThreshold=1
-XX:SurvivorRatio=8
-XX:+UseCodeCacheFlushing
-XX:+UseConcMarkSweepGC
-XX:+AggressiveOpts
-XX:+CMSClassUnloadingEnabled
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:+CMSParallelRemarkEnabled
-XX:CMSInitiatingOccupancyFraction=65
-XX:+CMSScavengeBeforeRemark
-XX:+UseCMSInitiatingOccupancyOnly
-XX:ReservedCodeCacheSize=64m
-XX:-TraceClassUnloading
-ea
-Dsun.io.useCanonCaches=false

-XX:+UseParNewGCসাম্প্রতিক CLion সংস্করণগুলির সাথে অন্তর্ভুক্ত করবেন না । অবৈধ বিকল্প।
সানডু লিভিউ ক্যাটালিন

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