Research Projects

  • Urdu Search Engine - Humkinar Pakistan
  • [ICT RDF, 2012-present, PKR 33.3 M]
    Search engines are as critical to Internet use as any other part of the network infrastructure, but they differ from other components in two important ways. First, their internal workings are secret, unlike, say, the workings of the DNS (domain name system). Second, they hold political and cultural power, as users increasingly rely on them to navigate online content
  • Run time parallelization of sequential binary code through JVM
  • [HEC 2015-present, PKR 3.4 M]
    Dynamic parallelization deals with parallel execution of sequential code with the help of a hardware/software runtime system. One of the staff members of HPCNL is doing his PhD dissertation in this area. He has recently developed an automated tool, named SeekBin. SeekBin is a Java agent that hooks to class loader of Java Virtual Machine (JVM) and analyzes the loading classes for parallelization potential. Runtime modification of Java classes for parallel execution is in progress.
  • Development of Type2 hypervisor for MIPS64 based systems
  • [ICT RDF, 2013-15, PKR 15.25 M]
    The project is about developing an open source Type 2 hypervisor which installs and runs like an ordinary application on MIPS64 Linux based systems. This hypervisor will host multiple MIPS64 Linux virtual machines with securely isolated resources like CPU and memory. Once a generic version of Type 2 hypervisor is developed and released under the GPL license, we plan to enhance this base system for specific vendors through future proposals. This enhancement/customization of the software code will follow some restricted license (which can co-exist with open source license in harmony) such that a viable business model can be built. Therefore this proposal is a preamble and builds the right ecosystem for future business activity.
  • System Mode Emulation in QEMU
  • [HEC, 2013-15, PKR 4.05 M]
    Emulation is a virtualization technique which is commonly used to run non-X86 software on a commonplace X86 based machines. Android emulator is an example which allows software developers run their Android programs on X86 computers. Such a use case has practical benefits like ‘convenience during software development’, ‘need to have fewer special embedded hardware for final testing’, ‘multiplexing actual hardware among many developers’ etc. Quick Emulator (QEMU) is another example of emulator which can run on many type of host machines (e.g. X86, PPC, etc.) and can emulate many target systems. QEMU does not support Cavium Inc’s Octeon processor based systems, which is a popular MIPS64 target.
  • Mobisense/Mobisense Video (T-Labs, Berlin Germany, 2007-12)
  • ATM backbone of Pakistan Internet Exchange in collaboration with LUMS (PTCL R&D Fund, 2005)