Patents
Literature
Patsnap Eureka AI that helps you search prior art, draft patents, and assess FTO risks, powered by patent and scientific literature data.

108 results about "Context switch" patented technology

In computing, a context switch is the process of storing the state of a process or of a thread, so that it can be restored and execution resumed from the same point later. This allows multiple processes to share a single CPU, and is an essential feature of a multitasking operating system.

SaaS intelligent concurrent pushing system

The invention relates to the technical field of message pushing, in particular to an SaaS (Software as a Service) intelligent concurrent pushing system which comprises a tenant flow monitoring module, a resource binding module, a lock-free object writing module, a handle layout construction module and a cache prefetching delivery module. According to the method, the high-frequency business object is identified by monitoring the flow characteristics of the tenants, and the complete Slab page is dynamically applied and bound to the thread exclusive local allocation buffer area, so that physical isolation of bottom layer resources is realized to eliminate global lock competition and context switching overhead in a multi-thread environment; lock-free memory writing is executed based on a privatized pointer, the object construction efficiency is greatly improved, a compact storage structure in which a bitmap is adjacent to a connection handle is constructed, a hardware cache prefetching mechanism is triggered by utilizing bitmap reading, connection data is loaded to a CPU cache line in advance, and the connection data is stored in the cache line. And the cache miss rate is reduced and the concurrent delivery performance of massive messages is remarkably improved by utilizing a memory locality principle.
Owner:JUNPENG SPECIAL EQUIP

Asynchronous communication-based file system client kernel mode and user mode communication method

The invention provides a file system client kernel mode and user mode communication method based on asynchronous communication. According to the asynchronous communication-based file system client kernel mode and user mode communication method provided by the embodiment of the invention, the context switching overhead of communication between the user mode and the kernel mode can be reduced, the data transmission throughput is improved, the resource utilization rate is optimized through dynamic queue management, and the problem of performance bottleneck in a high-concurrency scene is effectively solved.
Owner:JINAN INSPUR DATA TECH CO LTD

Data zero-copy processing method and system based on eBPF zero-trust gateway

The invention discloses a data zero-copy processing method and system based on an eBPF zero-trust gateway, and belongs to the technical field of computer network security. According to the method, an XDP program is loaded on a network card driving layer, and an AFXDP technology is combined to construct a kernel mode and user mode shared memory pool UMEM; when an original message arrives, an eBPF unit mounted by an XDP program intercepts the message in real time, a tunnel packaging space is reserved in situ in an original memory, and if the head space is insufficient, a new memory page is logically mapped from a UMEM standby buffer pool to achieve extension. Identity fingerprints are generated by extracting message feature vectors, load in-situ encryption is completed in cooperation with a kernel kTLS module, and data are prevented from being returned to a user mode for processing. According to the method, multiple copying and context switching of a kernel-user mode of a traditional SSL VPN are eliminated, the throughput is improved by 2-3 times, the delay is reduced to the microsecond level, the CPU utilization rate is reduced by 40% or above, application layer DDoS attacks are effectively defended, and the method is suitable for 5G edge computing and cloud native zero-trust gateway scenes.
Owner:JIANGSU ENLINK NETWORK TECH CO LTD

Multi-core scheduling system and method based on interrupt affinity and storage medium

The invention discloses a multi-core scheduling system and method based on interrupt affinity and a storage medium. The technical problem that data locality guarantee and load balancing are difficult to consider at the same time is solved by constructing a self-adaptive optimization closed loop of perception-decision-execution-feedback, and the method comprises the steps that a routing interruption configuration mechanism provides a basis for dynamic adjustment; an interrupt guide task placement mechanism ensures that an interrupt service program and an associated task are executed in the same CPU core, and the cache hit rate is increased; the execution overhead of an interrupt service program is brought into core load statistics through task context switching and a'task + ISR 'two-dimensional precise load evaluation mechanism triggered by ISR inlet / outlet double nodes, and real load awareness is achieved; a load-driven dynamic interrupt routing mechanism is combined with dual control of a hysteresis threshold and cooling time, so that a ping-pong effect is avoided. According to the method, dynamic load balancing is realized on the premise of keeping data locality, and the real-time response performance and throughput of the multi-core system are remarkably improved.
Owner:北京星云越动科技有限公司

Thread scheduling method, electronic equipment, storage medium and program product

The invention discloses a thread scheduling method, electronic equipment, a storage medium and a program product, and relates to the technical field of computers, security check is performed on a source thread and a target thread through a thread switching request initiated by the source thread, an allocatable time period of the source thread allocated to the target thread is calculated according to a security detection result, and the allocatable time period of the source thread allocated to the target thread is sent to the electronic equipment. Bypassing a processing mechanism of a completely fair scheduler, updating the virtual running time of a source thread, distributing an allocable time period to a target thread, calling a context switching function to execute thread switching operation on the source thread and the target thread, and synchronously updating the virtual running time of the target thread when the target thread consumes the allocable time period. According to the thread scheduling method and device, the problem that in the related technology, when a complete fair scheduler processes high-frequency and collaborative thread tasks, due to the indirect handover mechanism and fair scheduling characteristics of the complete fair scheduler, the delay of thread scheduling is improved is solved, and the delay of thread scheduling is reduced.
Owner:INSPUR SUZHOU INTELLIGENT TECH CO LTD

Task scheduling and notification method and device, storage medium and program product

PendingCN121636075AProgram initiation/switchingAsynchronous operationOperating system
The embodiment of the invention provides a task scheduling and notification method and device, a storage medium and a program product. In the embodiment of the invention, at least part of asynchronous operation instructions with the incidence relation in the target task are divided into the same group, and during the execution period of the asynchronous operation instructions in the same group, a task scheduler schedules and executes other tasks. Under the condition that all the asynchronous operation instructions in the same group are executed, the task scheduler controls the target task to enter a scheduling waiting state so as to wait to be scheduled again, and then under the condition that the target task is scheduled, task context switching is carried out so that the target task can be switched back to continue to be executed; compared with a scheme that task context switching is triggered once after each asynchronous operation instruction is completed, the task context switching frequency can be reduced by performing task context switching under the condition that the asynchronous operation instructions in the same group are completely executed by taking the group as a unit, and the task execution performance is improved on the whole.
Owner:ALIBABA CLOUD COMPUTING CO LTD

Inline optimization method and device for SQL callable routine, equipment and medium

The embodiment of the invention discloses an inline optimization method and device for an SQL (Structured Query Language) callable routine, equipment and a medium, and the method comprises the following steps: compiling the SQL callable routine to obtain an initial execution plan; analyzing the initial execution plan to determine a sub-method list; setting the initial execution plan as a current execution plan, traversing each sub-method in the sub-method list, and executing the following loop operations: executing an inline expansion operation on a target sub-method in the current execution plan to generate a new execution plan; updating the new execution plan to the current execution plan; and determining a current execution plan obtained after the loop operation is completed as an optimized target execution plan so as to complete inline optimization of the SQL callable routine. According to the technical scheme, the context switching cost caused by stack frame switching during calling of the SQL callable routine of the database is saved, so that the execution performance of the SQL callable routine is improved.
Owner:SHANGHAI DAMENG DATABASE

SSL VPN (Secure Socket Layer Virtual Private Network) system based on layered architecture and message processing method

The invention discloses an SSL (Secure Socket Layer) VPN (Virtual Private Network) system based on a layered architecture and a message processing method, in the scheme, an architecture in which a control plane and a data plane are completely decoupled is formed, an SSL VPN process is configured to be specially used for processing an encrypted control layer message, and an original data layer message is configured to be directly delivered to an independent high-performance forwarding engine through a bypass mechanism. According to the scheme, multi-core support is provided for a large-flow high-concurrency scene of the data message while the security of the SSL VPN is reserved, and meanwhile, the performance loss of a CPU (Central Processing Unit) in processes of context switching, message copying and the like in a kernel mode and a user mode in a traditional forwarding model is avoided by depending on a shared memory channel of a forwarding engine.
Owner:SHANGHAI BAUD DATA COMM

Processing methods, devices, storage media, and systems for industrial serial communication

The application provides a processing method, device, storage medium and system for serial machine communication, and belongs to the technical field of communication. The monitoring method comprises the following steps: storing element information corresponding to a plurality of ports by using a first queue pool; adding elements corresponding to one or more TCP ports in the plurality of TCP ports into a to-be-processed linked list, adding element information corresponding to one or more TCP ports with a cache mark into a preparation linked list, and receiving output information of the TCP ports in the preparation linked list; when the one or more TCP ports are connected, predicting I / O operations generated in a next process, and marking the process by using an asynchronous keyword. The application configures the to-be-processed linked list, the preparation linked list, the cache mark and the asynchronous keyword based on the coroutine technology, realizes processing of asynchronous communication of the serial machine, and does not have a time slice of context switching of the CPU, so that the CPU resource overhead is reduced.
Owner:WUXI STARS MICRO SYSTEM TECHNOLOGIES CO LTD

Data read / write method, system, and apparatus, computing device, and storage medium

PCT designated stageWO2026144711A1Computer hardwareEngineering
Embodiments of the present disclosure provide a data read / write method, system, and apparatus, a computing device, and a storage medium. The data read / write method comprises: receiving, by means of an asynchronous I / O layer, a data read / write request sent from a user space, and storing the data read / write request in a request queue; when the asynchronous I / O layer determines that the data read / write request is of a pass-through type, sending the data read / write request to a driver layer; and parsing the data read / write request by means of the driver layer, and sending request information of the data read / write request to a target processing end device for read / write processing. The data read / write request sent from the user space is received by means of the asynchronous I / O layer, and is sent to the driver layer after the data read / write request is determined to be of the pass-through type, thereby reducing context switching and data copying overhead, and improving the processing efficiency of I / O operations. The request is parsed at the driver layer and sent to the processing end device for read / write processing, thereby optimizing the scheduling of I / O tasks, reducing disk addressing time and I / O latency, and improving overall performance and system stability.
Owner:CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PTE LTD +1

Engine to enable high speed context switching via on-die storage

In an example, an apparatus comprises a plurality of execution units, and a first memory communicatively couple to the plurality of execution units, wherein the first shared memory is shared by the plurality of execution units and a copy engine to copy context state data from at least a first of the plurality of execution units to the first shared memory. Other embodiments are also disclosed and claimed.
Owner:INTEL CORP

Cross-platform VR resource performance evaluation and compatible operation method and system

The invention discloses a cross-platform VR resource performance evaluation and compatible operation method and system, and the method comprises the steps: building a VR resource performance evaluation model based on the performance evaluation of a CPU and a GPU, and the model comprises a CPU score, a GPU score, a weight coefficient and a performance stability correction factor of a current device; the CPU score is obtained through calculation of inter-process communication and a context switching number in a current equipment system environment, the GPU score is obtained through calculation of an actual computing power value and rendering delay which are obtained through multiple iterations of a standard GLSL matrix multiplication in the current equipment system environment, and the performance stability correction factor is determined according to frame time when VR resources are operated by current equipment; when the VR resources need to be operated, the evaluation score of the VR resources operated by the current equipment is calculated through the performance evaluation model, and the corresponding configuration parameters are allocated to operate the VR resources. According to the invention, the fluency and stability of the VR picture during operation can be ensured, and the user experience is improved.
Owner:JIANGXI JUNXUE DIGITAL TECH CO LTD

Kubernetes container vertical telescopic adjusting method and device

The invention relates to the technical field of computers, in particular to a Kubernetes container vertical stretching adjustment method and device, and the method comprises the steps: collecting business data, system data and scene data; determining a message priority coefficient according to the message delay requirement, and quantizing and generating a load index according to the message priority coefficient, the request queue length and the push error rate; diagnosing a performance state according to the average push delay, the memory page change rate and the network bandwidth utilization rate; constructing a resource demand index by combining the load index, the performance state and the active connection number, and judging a resource demand state according to the resource demand index; and determining a scaling direction based on the CPU utilization rate, the memory utilization rate and the network bandwidth utilization rate, and determining a CPU adjustment amount and a memory adjustment amount in combination with the resource demand state, the scaling direction and the context switching times of the process in the container. According to the method, the utilization efficiency of cluster resources is maximized, and a higher-level intelligent solution is provided for elastic scaling of cloud native applications.
Owner:BEIJING KANGHUI INTELLIGENT INNOVATION TECHNOLOGY CO LTD

Preemption of direct memory access processing for context switch

A direct memory access (DMA) controller issuing memory copy operations on behalf of a shader at a parallel processor stops issuing copy operations upon a context switch at the shader for a wave. The DMA controller or a trap handler associated with the shader saves the incomplete copy operations to a region of global memory, from which the incomplete operations are restored upon a context resume for the wave.
Owner:ADVANCED MICRO DEVICES INC

Computing device for switching context, method of operation and storage system thereof

The computing device includes a processor and a context switcher. The context switcher includes a data structure module for storing a context, which includes the starting address of a thread and values ​​associated with that thread. In an idle state, the processor loads a first context for a first thread from the corresponding data structure module in synchronization with a first cycle of a clock signal. In an active state, the processor processes the first thread according to the first context. Furthermore, in an active state, the processor provides a second context for a second thread to the context switcher. This second thread follows and will be processed in parallel with the first thread. The second context is stored in a subsequent data structure module within the context switcher's data structure module, which corresponds to a subsequent processor for processing the second thread.
Owner:SAMSUNG ELECTRONICS CO LTD

Virtual machine communication system and method and electronic equipment

The invention relates to a virtual machine communication system and method and electronic equipment. The system comprises a plurality of virtual machines and a virtual machine monitor. Any virtual machine in the plurality of virtual machines is used for putting the target data packet into a first shared memory corresponding to any virtual machine, and sending first notification information to the virtual machine monitor; the virtual machine monitor is used for obtaining a target data packet from the first shared memory in response to the first notification information; extracting target data and a target identifier from the target data packet; determining a to-be-communicated virtual machine based on the target identifier; putting the target data into a second shared memory corresponding to the to-be-communicated virtual machine, and sending second notification information to the to-be-communicated virtual machine; the to-be-communicated virtual machine is used for obtaining the target data from the second shared memory in response to the second notification information. According to the method, communication between the virtual machines is realized based on a front-end and rear-end drive separation architecture, context switching is reduced, and the processing speed of the data plane is improved.
Owner:CHINA AUTOMOTIVE INNOVATION CORP

Coroutine-based key-value storage system write optimization scheduling method, task scheduler and key-value storage system

PendingCN122431818APathPingOperational system
The application discloses a kind of based on the write optimization scheduling method of key-value storage system of coroutine, task scheduler and key-value storage system, by encapsulating write request as coroutine task, avoid operating system kernel context switching storm;Second, by introducing the queue state perception scheduling strategy for three queues, efficient overlap of processor execution phase and disk execution phase is realized, the resource utilization of processor and disk is significantly improved, and the scheduling strategy is according to the order of I / O task completion queue priority highest, post task queue second, write request queue lowest, so that the key processing path after disk persistence completion can be executed preferentially, and the next batch of write request is awakened in time, so as to reduce the overall waiting time of write request and system write delay;Third, the completion state is detected by independent I / O polling task, instead of using interrupt or callback mode, avoid the kernel state and user state switching overhead caused by interrupt processing.
Owner:HUAZHONG UNIV OF SCI & TECH +1

Neural processing circuits supporting context switching

PendingUS20260252386A1Computer architectureWorkload
Embodiments relate to supporting context switching between tasks of multiple workloads by a system including a storage device, a processor, and a neural processing circuit with one or more neural engine circuits. A workload can include multiple tasks executed by the one or more neural engine circuits of the neural processing circuit. A scheduler can generate a number of slices of tasks for tasks of a first workload. The one or more neural engine circuits of the neural processing circuit can first execute a task of a second workload. Upon completion, the one or more neural engine circuits can perform context switching to switch to execute one or more tasks of a slice of the first workload.
Owner:APPLE INC

Method for uploading and downloading data, related device and computer program product

The invention provides a data uploading and downloading method, a related device and a computer program product, and one implementation mode for data uploading in the application comprises the following steps: receiving a data uploading request for uploading target data to target storage, and storing the target data to a user mode shared memory; reading a fast data path address family socket corresponding to the target storage; redirecting the target data to a fast data path address family socket; and using the user mode shared memory to provide the target data for the target storage. Therefore, actions such as context switching and data copying in the data transmission process are reduced in a mode of reducing kernel participation, and the data transmission efficiency and the network throughput and read-write speed performance of the system are improved.
Owner:SHANGHAI BILIBILI TECH CO LTD

A context cache persistence method, device, equipment, system and medium

This invention provides a persistent context cache storage method, apparatus, device, system, and medium, aiming to leverage SSDs to address the limitations of GPU memory and the low read / write efficiency of traditional offloading schemes in long context inference. The system constructs an asynchronous zero-copy read / write pipeline with a bypass kernel, aggregates physical SSDs into a unified logical storage pool, and loads the master snapshot object to restore historical indexes for fast startup. Based on this, the system implements concurrency control and read-priority scheduling for mixed loads through a native context cache concurrency control mechanism and a read-first read / write scheduler, prioritizing read requests and accelerating the inference process. A shadow object snapshot persistence mechanism periodically persists context cache metadata, ensuring the persistence and reusability of context cache data. This invention eliminates context switching and file system overhead in traditional offloading schemes, improves SSD bandwidth utilization, and reduces inference latency for large language models.
Owner:BEIHANG UNIV

A SaaS intelligent concurrent pushing system

The present application relates to the technical field of message pushing, in particular to a SaaS intelligent concurrent pushing system, which comprises a tenant traffic monitoring module, a resource binding module, a lock-free object writing module, a handle layout construction module and a cache prefetch delivery module.In the present application, high-frequency business objects are identified by monitoring tenant traffic characteristics, complete Slab pages are dynamically applied and bound to thread-specific local allocation buffers, physical isolation of underlying resources is realized to eliminate global lock competition and context switching overhead in a multi-thread environment, lock-free memory writing is performed based on a private pointer to greatly improve object construction efficiency, a compact storage structure is constructed in which a bitmap is adjacent to a connection handle, a hardware cache prefetch mechanism is triggered by bitmap reading, connection data is loaded into a CPU cache line in advance, and the cache miss rate is reduced and the performance of mass message concurrent delivery is significantly improved by using the memory locality principle.
Owner:JUNPENG SPECIAL EQUIP

System and method for triggering a zero-cycle context switch

According to one aspect of the present disclosure, a processor is disclosed. The processor may include a plurality of registers. The plurality of registers may include a first set of registers associated with a regular mode thread. The plurality of registers may also include a second set of registers associated with an interrupt service thread. The processor may also include a processing core. The processing core may be configured to perform first operations associated with the regular mode thread. The processing core may be configured to receive an interrupt service signal associated with the interrupt service thread. In response to the interrupt service signal, the processing core may be configured to implement a zero-cycle context switch to perform second operations associated with the interrupt service thread using the second set of registers.
Owner:GREATER SHINE LTD

Context switching systems and methods

Various techniques are provided to implement context switching systems and methods. In one example, a system includes a plurality of programmable logic devices (PLDs) each configured to be in an active state or an inactive state. At most one of the plurality of PLDs is in the active state to provide PLD functionality. The system further includes an instance controller configured to communicate with each of the plurality of PLDs and control context switch aspects to set each of the plurality of PLDs to the active state or the inactive state. Related methods and devices are provided.
Owner:LATTICE SEMICON CORP

Memory aware context switching

A system for executing a plurality of software threads, comprising: a plurality of processing circuitries; a plurality of memory areas connected to the processing circuitries, each memory area associated with at least one of the processing circuitries; and at least one hardware processor, connected to the processing circuitries and configured for: in each of a plurality of iterations: while the processing circuitries execute the software threads, collecting for each thread a plurality of thread statistical values indicative of a plurality of memory accesses to at least some of the memory areas performed when executing the thread; for at least one thread, performing an analysis comprising the thread statistical values thereof to identify a preferred memory area of the plurality of memory areas; and configuring one of the at least one processing circuitry associated with the preferred memory area to execute the at least one thread.
Owner:NEXTSILICON LTD

Video memory scheduling system based on dynamic sequence length assembly line parallel training

PendingCN122086601AAchieve global awarenessachieve optimal allocationResource allocationBiological modelsComputer architectureEngineering
The invention belongs to the technical field of large-scale deep learning model training, and particularly relates to a video memory scheduling system based on dynamic sequence length assembly line parallel training. The system comprises a dynamic recalculation module, a video memory arrangement and prefetching module and a mapping reconstruction module, the system collects the length and load information of each micro-batch before each round of iteration, establishes an optimization model with the goal of minimizing the iteration time, dynamically generates a re-calculation plan, and realizes inter-stage video memory load balancing; by introducing a collating stream and an asynchronous scheduler outside a main computing stream, overlapping execution of video memory collating and computing prefetching is realized, and the influence of fragment collating on training performance is reduced; a dynamic physical block mapping strategy is designed based on a CUDA virtual memory management mechanism, the physical block granularity is adaptively adjusted according to the idle state of the video memory, and the API calling and context switching overhead is reduced. Experimental results show that the video memory utilization rate and the system stability are remarkably improved, and an efficient video memory scheduling scheme is provided for large model training.
Owner:FUDAN UNIVERSITY

NPU computing power dynamic allocation method and on-chip heterogeneous system

The invention discloses an NPU (Network Processing Unit) computing power dynamic allocation method and an on-chip heterogeneous system, and the method comprises the following steps: locking scheduling configuration parameters of an NPU, the scheduling configuration parameters comprising a time slice allocation strategy of the NPU between a non-real-time operating system and a real-time operating system; in the non-real-time operating system, a periodic scheduling timer is initialized and started according to the scheduling configuration parameters; in response to a time slice switching signal sent by the periodic scheduling timer, triggering a first context switching operation; in response to a real-time preemption event generated by the real-time operating system side, triggering a second context switching operation; and after the calculation task of the real-time operation system is executed, triggering a third context switching operation, and recovering the preempted hardware context of the non-real-time operation system, so that the interrupted calculation task can be continuously executed. According to the method, the safety and efficiency of dynamic allocation of the computing power are improved.
Owner:TRONLONG

Inter-process communication method, electronic equipment and storage medium

The invention discloses an inter-process communication method, electronic equipment and a storage medium, and relates to the technical field of communication. According to the scheme, the method comprises the following steps: executing semaphore waiting operation for an associated theme in a shared memory in a receiving end process so as to enter a blocked state and release processing resources; in a sending end process, target communication data is written into a target theme in a shared memory, a semaphore associated with the target theme is triggered to be updated to generate a target event notification, so that all receiving end processes blocked in the semaphore exit a blocked state, and the target event notification is sent to the receiving end process in the receiving end process receiving the target event notification. And obtaining target communication data from the target theme. In the scheme, the receiving end process is kept in the blocked state when no data is processed, and processor resources are not occupied; meanwhile, semaphore notification and data transmission are both completed in the shared memory, data copying and context switching between a kernel mode and a user mode are avoided, and therefore low processor resource occupation and low communication delay are achieved.
Owner:GREAT WALL MOTOR CO LTD

Method and system for allowing a custodian to manage a plurality of user accounts on a computing device via a device application

A computer-implemented method is for allowing a custodian to manage a plurality of user accounts on a computing device via a device application. The computer-implemented method includes displaying a custodian user account on a graphical user interface responsive to the device application being accessed on the computing device; managing the custodian user account in a first account context; responsive to an at-mention being sent from a first contact to a shadowed user account, receiving an alert at the custodian user account via the device application corresponding to the at-mention; changing from the custodian user account to the shadowed user account via the device application; and changing the operating mode in the device application from the first account context to a second account context such that the shadowed user account is shadowed on the computing device by the custodian at less than full account control.
Owner:HARLAN LANE +2

Accessibility-enabled application switching

Techniques for accessibility-enabled application switching are provided. In an example method, a processing device receives a status indication of a screen reader browsing content using a first application. The processing device receives a context switch indication from the screen reader, including a designation of a second application as a target application based on context switch accessibility code. The processing device generates a token comprising a client device identifier and identifiers of the source and target applications. The processing device then receives a status indication of the screen reader browsing content using the second application and a second context switch indication. The processing device accesses the token based on the client device identifier and determines the source application. The processing device updates the identifiers of the source and target applications. The processing device then receives a status indication of the screen reader browsing the content using the first application.
Owner:ADOBE INC

Fast interpretability method based on multi-level cache

A kind of fast explainability method based on multi-level cache, respectively through local cache in the memory space in the same process and through distributed cache in historical data cache explainability report for fast reading, in turn through unique identification retrieval local cache and distributed cache failure with zero-copy mode transmission, reduce the repeated I / O copy operation between kernel buffer and user process buffer and CPU overhead between user process address space and kernel address space because of context switching.The application can be applied to recommendation model developers and actual recommendation system scenarios, and tell model modeling personnel or the essential reason of recommended item obtained by using user.
Owner:SHANGHAI JIAOTONG UNIV