TGViewer
کدهالیک | codehalic کدهالیک | codehalic @codehalics · 4.15K subscribers
Post #679 730
یه نفر اومده سراغ یکی از ساده‌ترین چیزهایی که توی نرم‌افزارها مدام اتفاق می‌افته: تبدیل عدد به متن. مثلاً اینکه عدد 123456 بشه «123456». کاری که معمولاً برنامه‌ها انجام می‌دن اینه که عدد رو چند بار تقسیم می‌کنن، رقم‌ها رو یکی‌یکی درمیارن، یا از یه‌سری جدول آماده کمک می‌گیرن. اما ایده‌ی این مقاله این بوده که بیایم این مسیر قدیمی رو دور بزنیم. عدد رو به تکه‌های ۸ رقمی شکسته، بعد با قابلیت‌های جدید پردازنده، چندتا رقم رو هم‌زمان حساب کرده؛ یعنی به‌جای اینکه CPU رقم‌ها رو دونه‌دونه بسازه، همه رو موازی جلو برده. برای این کار هم از AVX-512 و ضرب‌های سریع استفاده کرده تا تقسیم‌های سنگین تا حد زیادی حذف بشن. جالب‌تر اینکه الگوریتم قبل از اجرا یه نمونه‌گیری کوچیک هم می‌کنه تا بفهمه جنس عددها شبیه همه یا نه، بعد خودش مسیر سریع‌تر رو انتخاب می‌کنه. نتیجه‌اش؟ یه کاری که خیلی معمولی به نظر می‌رسه، توی بعضی حالت‌ها زیر دو نانوثانیه انجام می‌شه.


https://onlinelibrary.wiley.com/doi/10.1002/spe.70079

@codehalics | کدهالیک
Wiley Online Library Converting an Integer to a Decimal String in Under Two Nanoseconds Objective Converting binary integers to variable-length decimal strings is a fundamental operation in computing. Conventional fast approaches rely on recursive division and small lookup tables. The ...
  • 🔥 6
  • ❤‍🔥 1
More from @codehalics
  1. Oct 7, 2026این نکته رو هم اضافه کنم که این مورد داره ۲ اصل از اصول SOLID رو رعایت میکنه ! اول DIP (مع…
  2. Oct 7, 2026توی NestJS اینکه چند تا پوشه مثل Orders و Payments بسازی معنیش کد ماژولار نیست. وقتی همه چ…
  3. Oct 7, 2026توی نسخه جدید 16.4 نکس‌جی‌اس، مهم‌ترین خبر اینه که مدل جدید Cache Components بالاخره کامل…
  4. Oct 5, 2026یه اتفاق جالب افتاده: یه برنامه‌‌نویس موقع ساخت پروژه دات‌نت با Claude متوجه شده هوش مصنوع…
  5. Oct 5, 2026دوره جامع معماری نرم‌افزار منتشر شد. در این آموزش ۴ ساعته و فشرده، مباحث Clean Architectur…
  6. Oct 4, 2026این پروژه خیلی جالب بود یه نفر نرم افزار مدیریت انبار رو از یه کار خشک و تکراری به یه بازی…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →