自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Ubuntu22.04安装MinkowskiEngine0.5.4

最初我使用cuda12.0进行安装,由于官方没有给出cuda12.0对应的pytorch版本,但查阅资料发现cuda12.0可以兼容cuda11.8对应的pytorch,但在安装时出现检测cuda版本和编译版本不匹配问题,在cpp_extention文件中注释检测cuda版本代码,仍然出现编译错误问题,当时认为是gcc版本问题,于是更换多个版本都无法解决问题。测试过很多版本都有坑,亲测以下环境可以正常安装。记录在复现论文pc2wf时安装MinkowskiEngine踩过的坑。4.检查是否成功安装。

2024-05-08 20:06:17 374 1

原创 面经系列:操作系统(一)

段页存储管理通过结合分段和分页的优点,提供了一个既支持高级语言的模块化编程,又能高效管理物理内存的内存管理方案。这种方法在现代操作系统中广泛使用,特别是在需要高度模块化和复杂内存管理的系统中。

2024-04-27 23:58:56 1725

原创 Elasticsearch的DSL查询和MySQL的SQL查询哪个自由度更高

如果以能够表达和执行的查询类型和复杂度为标准,ES 的 DSL 提供了在全文搜索和实时分析方面更高的自由度,而 MySQL 在关系数据的精确处理、事务控制和数据完整性方面具有更高的自由度。Elasticsearch 更适合那些需要高度灵活的搜索能力和实时数据分析的场景,而 MySQL 更适用于需要高度结构化查询、事务支持和数据完整性的传统业务系统。Elasticsearch使用一种基于 JSON 的查询语言,它是为处理复杂的、全文本和结构化的搜索场景而设计的。

2024-04-14 15:50:29 433 1

原创 JVM:垃圾回收

JVM垃圾回收的核心:如何判断对象能否被回收;如何回收。

2024-04-13 17:08:21 1846

原创 Maven常见命令

mvn versions:use-latest-versions:更新pom.xml中的依赖到最新版本(需要安装versions插件)。mvn package:在编译基础上,打包编译后的代码,通常是打包成jar或war等格式的文件。以上是Maven最常用的一些命令,根据项目的具体需求和开发流程,可能会使用到其他命令或参数。mvn clean package:清理后再编译打包,常用于确保使用的是最新的代码和资源。mvn install:在打包的基础上,将包安装到本地仓库中,供其他项目依赖使用。

2024-04-12 23:24:21 175 1

原创 面经系列:java并发编程(4)

要想让 PriorityBlockingQueue 实现对任务的排序,传入其中的任务必须是具备排序能力的,方式有两种:提交到线程池的任务实现 Comparable 接口,并重写 compareTo 方法来指定任务之间的优先级比较规则。该线程池中的线程数量始终不变。若多余一个任务被提交到该线程池,任务会被保存在一个任务队列中,待线程空闲,按先入先出的顺序执行队列中的任务。线程池就是管理一系列线程的资源池,当有任务要处理时,直接从线程池中获取空闲线程来处理,处理后线程不会被销毁,而是等待下一个任务。

2024-04-12 23:10:10 806

原创 面经系列:java并发编程(3)

AbstractQueuedSynchronizer抽象类,AQS是juc包下的一个基类,juc下的很多内容都是基于AQS实现了部分功能,如ReentrantLock、TreadPoolExecutor、阻塞队列、CountDownLatch、Semaphore等。AQS的核心思想:如果被请求的资源空闲,则将请求该资源的线程设为工作线程,并将该资源设定为锁定状态。如果被请求的资源被占用,则需要一套线程阻塞和唤醒的锁分配机制。AQS中这个机制是基于CLH锁实现的。

2024-04-12 22:49:05 1430

原创 面经系列:java并发编程(2)

指令重排是编译器和处理器为了优化程序运行性能和利用资源进行的一种优化手段,在不改变程序运行结果的前提下,改变执行运行顺序。编译器优化的重排处理器优化的重排内存系统的重排指令重排在并发编程中可能导致问题,java提供volatile关键字以及java.util.concurrent包中的各种同步工具。使用volatile可以保证变量的可见性,并禁止指令重排,从而在一定程度上避免了因指令重排导致的并发问题。

2024-04-12 22:19:57 841

原创 面经系列:java并发编程(1)

它们可以协作完成任务,一个线程可以同时存在多个协程,一个协程阻塞时可以转而执行另一个协程,从而提高程序的并发性和吞吐量。JDK1.2开始,在 Windows 和 Linux 等主流操作系统中,Java 线程采用的是一对一的线程模型,也就是一个 Java 线程对应一个系统内核线程。JDK 1.2 之前,Java 线程是一种用户级线程,不能直接使用操作系统提供的功能如异步 I/O、只能在一个内核线程上运行无法利用多核,这个线程模型是多对一的。它允许在持有或不持有锁的情况下暂停线程的执行,但不会影响到锁的状态。

2024-04-12 22:05:13 816

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除