Gbiner
Gbiner

let me = me.better();

随记 随手记录一些杂项知识


Windows 部署 Stable Diffusion WebUI (N卡用户)

这篇文章详细介绍了在Windows系统上使用NVIDIA显卡部署Stable Diffusion WebUI的全过程。文章首先列出了必要的准备工作,包括一张具备至少4GB显存的N卡、Python 3.10环境以及稳定的网络连接。接着,文章提供了简明扼要的安装步骤:通过Git克隆Stable Diffusion WebUI仓库,并运行`webui-user.bat`文件即可启动服务。此外,文章还分享了在实际部署过程中可能遇到的问题及解决方案,例如如何处理`RuntimeError: Couldn't Install Torch`和`RuntimeError: Couldn't Install clip`等问题,并提供了详细的本地安装步骤来解决依赖项冲突。最后,作者提醒用户可以前往Civitai平台下载所需的模型并将其放置在相应目录中以完善功能。这篇文章不仅为N卡用户提供了一份清晰的部署指南,还通过实际案例展示了如何克服技术难题。你是否准备好开始你的AI艺术之旅?是否好奇如何解决这些技术挑战?让我们一起探索Stable Diffusion的世界吧!--DeepSeek

AI Stable Diffusion stable-diffusion-webui python windows installation-guide common-issues civitai

偶遇“曼哈顿距离”

偶遇“曼哈顿距离”这篇文章记录了作者在编写向量距离算法时,发现Copilot使用的`Math.abs(差值)`方法并非传统的欧几里得距离,而是计算了坐标轴上两点的绝对差之和。通过进一步探究,文章揭示了这就是著名的曼哈顿距离(Manhattan distance),并深入探讨了其概念、历史背景以及实际应用场景。曼哈顿距离源于19世纪赫尔曼·闵可夫斯基的研究,得名于曼哈顿城市规划中网格状街道的行车路径特征。与欧几里得距离不同,曼哈顿距离在计算时仅考虑坐标轴上的投影距离总和,这使得它在早期计算资源有限的情况下特别有用,因为它避免了复杂的平方根运算,只需进行简单的整型加减即可完成计算。然而,文章也指出,曼哈顿距离在高维数据中可能显得不够直观,并且通常会给出比欧几里得距离更高的数值结果。通过这篇文章,我们不仅理解了曼哈顿距离的数学定义和实际意义,还反思了其在不同场景中的适用性。你是否曾意识到这种距离计算方式背后的智慧?它如何影响着我们的数据处理与算法选择?这些问题或许能引发读者对更广泛的距离度量方法及其应用场景的思考。--DeepSeek

Game Algorithm manhattan-distance distance-algorithm vector-math taxicab-geometry computer-science mathematics

什么是C++的野指针?

这篇博客探讨了C++中野指针的概念及其危害,详细分析了野指针的形成原因并提出了有效的规避方法。文中指出,野指针并非空指针(NULL),而是指向无效内存地址的指针,其危险性在于可能导致不可预测的程序行为甚至崩溃。文章通过三种常见场景解释了野指针的来源:未初始化的指针、释放后未置空的指针以及作用域超出后仍被使用的指针。例如,未初始化的指针可能随机指向内存中的某个位置,而释放后的指针若未及时置空,可能会意外访问已被其他程序占用的内存空间。此外,返回指向栈内存的指针也可能导致野指针问题,因为栈内存会在函数结束时被自动回收,此时指针将失去有效引用目标。 文章强调了预防野指针的重要性,并提出了两大核心原则:初始化时应立即置为空指针(NULL),释放内存后及时将指针置空。这些措施能够显著降低野指针的风险,确保程序的稳定性和安全性。文中通过具体代码示例进一步说明了问题的严重性以及如何正确处理指针操作。 那么,面对野指针问题,我们该如何识别并避免它?文章中的方法是否足够应对所有情况?在实际开发中,你又会采取哪些额外措施来防止野指针的发生呢?这些问题值得每一位C++开发者深思。--DeepSeek

Tutorial C++ wild-pointer c-plus-plus memory-management uninitialized-pointer null-pointer-assignment scope-issue

  • 1