Use Internet Explorer in Windows 11

Background With Windows 11, Microsoft has removed several outdated apps and features, including the long-hated Internet Explorer. However, some proprietary apps and legacy sites still require Internet Explorer functionality to run. Several posts suggest using the IE mode in Microsoft Edge. However, it is not working for some websites, such as the Talent Introduction System for Shenzhen. Solution Step 1. Create a VB script, named ie.vbs with the following content. Step2. Run the VB script, and the Internet Explorer will be launched as expected.

Continue Reading

Compile Caffe without Root Privileges

In this tutorial, we are going to introduce how to install Caffe without root privileges. We assume that you have installed Anaconda and CUDA on your PC. Create Virtual Environment Install Dependencies Since we decide not to use system dependencies, we need to install them in the Anaconda environment. To install, you can use the following commands: Build Protocol Buffer (protobuf) Please DO NOT install it with Anaconda, because it causes the problem of the undefined reference in the linking process. To compile protobuf, we need to download the source code from GitHub: Then, we need to generate a Makefile with configure: Please make sure that you add the --enable-share option. Finally, we can build it with make and make…

Continue Reading

Accelerate WordPress with CDN and Cache Servers

It has been a long time since I last wrote a blog post. In the past few days, I updated the architecture of Infinite Script to accelerate the speed for Chinese users. In this article, I share the new architecture of our website with you. Optimizing a CDN for Static Content Delivery Static content does not change over a period of time. If it does change, the changes are predictable. Static content includes images, CSS sheets, JavaScripts, and PDF files. Because of this, CDNs can cache a copy of the content at their edge servers. They can then serve it whenever a client requests it. CDNs are best at optimizing the delivery of static content from edge servers to users. Therefore, we use…

Continue Reading

Get Root Privileges Using CVE-2017-16995

NOTE: PLEASE DO NOT USE IT TO ATTACK OTHER COMPUTERS. CVE-2017-16995 has been fixed before. But it is broken again in many kernels of Debian and Ubuntu distributions, ranging from version 4.4 to 4.14. It causes an arbitrary memory read/write access issue was found in the Linux kernel compiled with the eBPF bpf(2) system call (CONFIG_BPF_SYSCALL). The issue could occur due to calculation errors in the eBPF verifier module, triggered by user-supplied malicious BPF program. An unprivileged user could use this flaw to escalate their privileges on a system. Setting parameter "kernel.unprivileged_bpf_disabled=1" prevents such privilege escalation by restricting access to bpf(2) call. Steps to Reproduce Create a file named upstream44.c and paste the following code to it. Then, compile it and make it executable: If…

Continue Reading

Build PyTorch Extensions with CUDA and CFFI

Deprecated warning: PyTorch 1.0+ uses to Aten as its tensor library. So the article is no longer applicable in PyTorch 1.0+. Please refer to this GitHub repository for more information. Python is one of the most popular programming languages today for deep learning applications. However, as an interpreted language, it has been considered too slow for high-performance computing. Therefore, I incorporated CUDA into Python to build my own extension that accelerates the computation. In this tutorial, I give an example of CUDA extension for data augmentation in deep learning. Create Build Scripts First of all, we need to create a script for building FFI extension named build.py. Create CUDA Interface Then, we need to create an interface for CUDA which…

Continue Reading

Getting Started with JUnit 5: Test your Spring MVC Application with it

In this post, we described how to use JUnit 5 to test your Spring MVC application with Maven. Setup Maven Dependencies We can get the required dependencies by declaring the junit-jupiter-api (version 5.x) dependency in our pom.xml file. This dependency provides the public API for writing tests and extensions. If we are using an IDE that is bundled with an older JUnit 5 version, it throws an exception when we try to run our unit tests by using our IDE. We can fix this problem by adding the following dependency to our POM file: The junit-platform-launcher provides a public API for configuring and launching tests. The API is typically used by IDEs and build tools. To test the Spring application,…

Continue Reading
Contact Us
  • Tencent AI Lab, Shenzhen, China
  • cshzxie [at] gmail [dot] com